使用类似a = copyf(dictlist, key, valuelist)
的接口(interface)。
>>> dictlist = [{'first': 'James',
'last': 'Joule'},
{'first': 'James',
'last': 'Watt'},
{'first': 'Christian',
'last': 'Doppler'}]
>>> valuelist = ['James', 'John']
>>> x = copyf(dictlist, 'first', valuelist)
>>> print(x)
[{'first': 'James',
'last': 'Joule'},
{'first': 'James',
'last': 'Watt'}]
dictlist
实际上是一个 csv.DictReader
实例。
最佳答案
更新:考虑到 OP 的重新编辑问题:
def copyf(dictlist, key, valuelist):
return [dictio for dictio in dictlist if dictio[key] in valuelist]
关于python - 如何过滤具有给定键匹配值的字典列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5762643/