我有一个词典列表,如下所示:
[{'name':1, 'id':2, 'otherstuff':3}, {'name':2, 'id':3, 'otherstuff':1}, {'name':3, 'id':1, 'otherstuff':2}]
如何仅将每个成员的特定密钥提取到另一个列表中?
试图得到这个:
[{'name':1, 'id':2}, {'name':2, 'id':3}, {'name':3, 'id':1}]
答案 0 :(得分:1)
初始化您需要的密钥列表:
val result = addInt(3, 4)._1
val (result, _) = addInt(3, 4)
以keys = {'name', 'id'}
/ list
理解提取您的键值对。
dict
filtered_data = [{k : x[k] for k in x.keys() & keys} for x in data] # thanks, vaultah!
位仅在python3.x中有效,因为x.keys() & keys
作为x.keys()
返回,并且交集操作确保如果你没有引发set
尝试访问该特定子字典中不存在的密钥。