Python 循环浏览字典以提取2个值

Python 循环浏览字典以提取2个值,python,rest,dictionary,tuples,Python,Rest,Dictionary,Tuples,我正在从事一个机器人设备项目(通过rest协议访问自动驾驶机器人车)。这段代码从机器人接收有关“任务”的数据,这些任务是在机器人内部编程的,我想通过名称和GUID访问和排序,而不需要其他不需要的信息。 我想我正在使用一本项目词典,但我对词典一点也不熟悉。下面是我正在接收的一段数据,需要进行排序: {u'guid': u'01b735d6-4a8e-11e7-b126-f44d3061db09', u'name': u'Spraying demo'}, {u'guid': u'00d5387c-4

我正在从事一个机器人设备项目(通过rest协议访问自动驾驶机器人车)。这段代码从机器人接收有关“任务”的数据,这些任务是在机器人内部编程的,我想通过名称和GUID访问和排序,而不需要其他不需要的信息。 我想我正在使用一本项目词典,但我对词典一点也不熟悉。下面是我正在接收的一段数据,需要进行排序:

{u'guid': u'01b735d6-4a8e-11e7-b126-f44d3061db09', u'name': u'Spraying demo'}, {u'guid': u'00d5387c-4b7d-11e7-9221-f44d3061db09', u'name': u'REST Mission'}, {u'guid': u'f47be478-4c28-11e7-b184-f44d3061db09', u'name': u'Am or demo'}, {u'guid': u'e1af13ba-4f38-11e7-9626-f44d3061db09', u'name': u'Demo - Tech Center'}
我想取出所有属于guid或名称的项。如果可能,我的目标是将它们放在单独的列表中(如guid列表和名称列表)

以下是我试图处理此问题的代码(很抱歉,可能有点草率):

我试图找到解决办法,我看到很多人在做类似的事情

对于dict中的k:
打印(k)


但这并不是我想要做的。我将数据作为名为getMissions的变量导入。我可以通过缩小它的范围来提取单个项,就像一个带括号的元组一样,但字典中的项数会发生变化,因此每次添加新项时,我都必须不断更新代码。如果你有什么建议,我将不胜感激。谢谢

您可以通过列表理解来实现这一点:

l = [{u'guid': u'01b735d6-4a8e-11e7-b126-f44d3061db09', u'name': u'Spraying demo'}, {u'guid': u'00d5387c-4b7d-11e7-9221-f44d3061db09', u'name': u'REST Mission'}, {u'guid': u'f47be478-4c28-11e7-b184-f44d3061db09', u'name': u'Am or demo'}, {u'guid': u'e1af13ba-4f38-11e7-9626-f44d3061db09', u'name': u'Demo - Tech Center'}]
names = [d['name'] for d in l]
guids = [d['guid'] for d in l]
print(names)
print(guids)
输出:

['Spraying demo', 'REST Mission', 'Am or demo', 'Demo - Tech Center']
['01b735d6-4a8e-11e7-b126-f44d3061db09', '00d5387c-4b7d-11e7-9221-f44d3061db09', 'f47be478-4c28-11e7-b184-f44d3061db09', 'e1af13ba-4f38-11e7-9626-f44d3061db09']
说明:


[d['name']代表l中的d]
将遍历字典列表,并构建一个字典值列表,其中包含键
'name'

请编辑您的帖子,以包含您迄今为止编写的代码。
['Spraying demo', 'REST Mission', 'Am or demo', 'Demo - Tech Center']
['01b735d6-4a8e-11e7-b126-f44d3061db09', '00d5387c-4b7d-11e7-9221-f44d3061db09', 'f47be478-4c28-11e7-b184-f44d3061db09', 'e1af13ba-4f38-11e7-9626-f44d3061db09']