我是 Python 新手,遇到了一个我无法通过谷歌搜索的问题。我已经使用 wxPython 和 ObjectiveListView 构建了一个 GUI。在它的中心,GUI 有一个列表控件,以 X 行(数据由用户加载)和五列显示数据。
当用户从列表控件中选择多个条目时(按 CTRL 或单击时按 shift),ObjectiveListView 模块给我一个字典列表,字典包含列表控件行中的数据。这正是我想要的,好!
返回的列表如下所示:
print MyList
[{'id':1023, 'type':'Purchase', 'date':'23.8.2008', 'sum':'-21,90', 'target':'Apple Store'}, {'id':1024, 'type':'Purchase', 'date':'24.8.2008', 'sum':'-21,90', 'target':'Apple Store'}, {'id':23, 'type':'Purchase', 'date':'2.8.2008', 'sum':'-21,90', 'target':'Apple Store'}]
所有字典都有相同的键,但值会发生变化。'id' 值是唯一的。问题从这里开始。我想获取用户选择的所有项目的通用值。在上面的列表中,它们将是 'sum':'-21,90' 和 'target':'Apple Store'。
我不知道如何正确比较列表中的字典。一个大问题是我事先不知道列表包含多少个字典,因为它是由用户决定的。
我有一个模糊的想法,列表推导将是要走的路,但我只知道如何将两个列表与列表推导进行比较,而不是 n 个列表。任何帮助,将不胜感激。