按键从字典中获取值数组



我有字典:

teamDictionary = {
1: {'name': 'Bob', 'team': 'A', 'status': 'Leave'},
2: {'name': 'George', 'team': 'C', 'status': 'Training'},
3: {'name': 'Sam', 'team': 'B', 'status': 'Travel'},
4: {'name': 'Phil', 'team': 'A', 'status': 'Leave'},
5: {'name': 'Georgia', 'team': 'C', 'status': 'Training'}
}

我需要得到数组的名称:

['Bob','George','Sam','Phil','Georgia']

我该如何解决我的问题?

使用列表推导式可以

  1. 获取字典中的值
  2. 对于每个值,得到name
TeamDictionary = {
1: {'name': 'Bob', 'team': 'A', 'status': 'Leave'},
2: {'name': 'George', 'team': 'C', 'status': 'Training'},
3: {'name': 'Sam', 'team': 'B', 'status': 'Travel'},
4: {'name': 'Phil', 'team': 'A', 'status': 'Leave'},
5: {'name': 'Georgia', 'team': 'C', 'status': 'Training'}
}
print([x['name'] for x in TeamDictionary.values()])
> ['Bob', 'George', 'Sam', 'Phil', 'Georgia']

可以:

names = [value['name'] for key, value in teamDictionary.items()]

您可以使用数组推导式轻松地在一行中完成此操作。

names = [item['name'] for item in teamDictionary.values()]

您可以遍历字典键,并且对于每个项,您可以'取' name属性,如:

names = [teamDictionary[key]['name'] for key in teamDictionary]

相关内容

  • 没有找到相关文章

最新更新