pandas 从字典列表中返回列表和字典的子集

okxuctiv  于 2022-11-27  发布在  其他
关注(0)|答案(2)|浏览(106)

我试图返回字典列表的子集,它是从字典列表派生的。
输入:

dicts = [
    {'name': 'Sam', 'age': 12},
    {'name': 'Pete', 'age': 14}, 
    {'name': 'Sarah', 'age': 16}
]

我尝试得到这个输出:

res = [
    {'name': 'Sam'},
    {'name': 'Pete'}, 
    {'name': 'Sarah'}
]

到目前为止,我一直在尝试这种方法:

res = []

def new_dict(dicts):
    for i in range(len(dicts)):
        for k, v in dicts[i]:
            if dicts[i][k] == 'name'
                res.append(dicts[i][k] = v)

print(new_dict(dicts))
jslywgbw

jslywgbw1#

使用列表解析,您可以:

[{'name': x['name']} for x in dicts]
fcg9iug3

fcg9iug32#

更安全的方法(如果其中一个dict没有name值,也不会失败):

[{'name': x['name']} for x in dicts if 'name' in x]

相关问题