我如何使用Python列表执行此操作?(itemgetter?)

TIM*_*MEX 2 python dictionary list

[{'id':44}, {'name':'alexa'},{'color':'blue'}]
Run Code Online (Sandbox Code Playgroud)

我想在列表中选择"id"中的任何内容.基本上,我想打印44,因为这是列表中的"id".

Dou*_*der 5

这是一个奇怪的数据结构......一个项目词典的列表.

key = 'id'
l = [{'id':44}, {'name':'alexa'},{'color':'blue'}]

print [ x[key] for x in l if key in x ][0]
Run Code Online (Sandbox Code Playgroud)

假设您可以依靠关键存在一次......

也许您应该首先将列表转换为字典:

key = 'id'
l = [{'id':44}, {'name':'alexa'},{'color':'blue'}]

d = {}
for x in l:
    d.update(x)
print d[key]
Run Code Online (Sandbox Code Playgroud)

  • `.has_key`wtf?为什么这甚至被投票? (3认同)