关于字典的推导式

Posted WhatTTEver

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于字典的推导式相关的知识,希望对你有一定的参考价值。

字典推导式:

dic={i:j for i in [1,2,3] for j in [\'a\',\'b\',\'c\']}

理论上来说会生成{1:\'a\',1:\'b\',1:\'c\',2:\'a\',2:\'b\',2:\'c\',3:\'a\',3:\'b\',3:\'c\'}这样一个字典

但是实际上输出:

因为字典的key是唯一的,所以1:a,1:b,2:a,2:c,3:a,3:b被后面的1:c,2:c,3:c给覆盖了

如果想要生成两个列表一一对应式的字典,可以采用以下方式:

 

>>> a=[1,2,3]
>>> b=[\'x\',\'y\',\'z\']
>>> dic=dict(zip(a,b))

或者:

>>> dic={i:j for i,j in zip(a,b)}

此时输出的结果是:

{1: \'x\', 2: \'y\', 3: \'z\'}

以上是关于关于字典的推导式的主要内容,如果未能解决你的问题,请参考以下文章

python的各种推导式(列表推导式字典推导式集合推导式)

python的各种推导式(列表推导式字典推导式集合推导式)

python的各种推导式(列表推导式字典推导式集合推导式)

python的列表推导式字典推导式集合推导式

Python 全栈开发:python的推导式(列表推导式字典推导式集合推导式)

[转] python中的推导式(列表推导式,字典推导式, 集合推导式)