如何获取包含字典值和键的列表?

时间:2020-05-28 09:20:34

标签: python dictionary

我试图了解什么是产生包含字典值和键的列表的最有效方法。我尝试使用.items()函数,但效果不佳,因为items()返回了一个元组列表,然后我不得不拼合导入其他模块。目前,我正在使用:

zdict = { 'a':1,'b':2,'c':3}
mylistofvaluesandkeys = list(zdict) + list(zdict.keys()))

我正在寻找的结果是一个列表,例如[1, 2, 3, 'a', 'b', 'c']中的所有元素均以任意顺序排列。

是否有更好的方法来执行此任务?

2 个答案:

答案 0 :(得分:2)

您可以通过itertools懒惰地完成它:

>>> import itertools
>>> itertools.chain(zdict.values(), zdict.keys())
<itertools.chain object at 0x10a25a9d0>
>>> list(itertools.chain(zdict.values(), zdict.keys()))
[1, 2, 3, 'a', 'b', 'c']

答案 1 :(得分:1)

如果可以将键与值混合在一起,则可以执行以下操作:

from itertools import chain

list(chain(*zdict.items()))

这是结果:

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