如何通过列表理解检索字典的键列表和值?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何通过列表理解检索字典的键列表和值?相关的知识,希望对你有一定的参考价值。

这是一个MWE,显示我想要获得但使用for循环:

a = {'a':1, 'b':2, 'c':3, 'd':4}
b = []
c = []
for key, value in a.items():
  b.append(key)
  c.append(value)

print(b) # ['a', 'b', 'c', 'd']
print(c) # [1, 2, 3, 4]

我想使用list comprehension在一行中获得相同的结果。 b,c = [(key, value) for key, value in a.items()]导致解包错误,因为它分别分配给b和c,a的第一项和第二项,然后它不知道在哪里解包其他项。 b,c = [key, value for key, value in a.items()]再次出现错误,语法错误。

答案
b, c = map(list, zip(*a.items()))
print(b)
print(c)

这输出:

['a', 'b', 'c', 'd']
[1, 2, 3, 4]

以上是关于如何通过列表理解检索字典的键列表和值?的主要内容,如果未能解决你的问题,请参考以下文章

获取以索引为导向的嵌套字典中的键和值列表

13 个非常有用的 Python 代码片段

Vue列表没有显示javascript字典的键?

如何对字典的函数输出列表进行单元测试?

8.字典dict和解构-封装

如何获取字典中的键列表?