Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/355.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从一个列表和另一个字典创建python字典_Python - Fatal编程技术网

如何从一个列表和另一个字典创建python字典

如何从一个列表和另一个字典创建python字典,python,Python,我有一个列表mylist和一本字典dict,我想根据mylist和dict制作另一本字典。既然我需要跟踪两个索引,那么我如何通过字典理解做到这一点呢?一个用于字典的键,一个用于列表的范围?我尝试了以下方法: new = {F(dict[k]):mylist[i] for k in dict, for i in range(len(mylist))} 但它不起作用。您可能会通过以下方式逃脱: new = {F(dict[dict.keys()[i]]):ll[i] for i in range(

我有一个列表
mylist
和一本字典
dict
,我想根据
mylist
dict
制作另一本字典。既然我需要跟踪两个索引,那么我如何通过字典理解做到这一点呢?一个用于字典的键,一个用于列表的范围?我尝试了以下方法:

new = {F(dict[k]):mylist[i] for k in dict, for i in range(len(mylist))}

但它不起作用。

您可能会通过以下方式逃脱:

new = {F(dict[dict.keys()[i]]):ll[i] for i in range(len(ll))}
使用
zip()


但是,您确实不应该使用
dict
作为变量名,因为它与内置类型冲突<代码>列表出于同样的原因也不是一个好名字。此外,它告诉你里面的东西是什么?列表和字典都应该使用描述性名称。

有些相切,但像
l1
ll
这样的东西只会产生糟糕的标识符。为什么因为编写
l1
而不是
ll
,所以很难追踪bug?@zondo感谢您的澄清。这在Python3中不起作用,因为
.keys()
返回一个
dict_keys
对象,而不是列表。很好,在Python3中,您必须将dict.keys()转换为列表。。。我同意zondo关于dict作为变量名的观点,这是自找麻烦。。。
new = {F(dict[key]): item for key, item in zip(dict, ll)}