Python 创建包含两个列表的dict最有效的方法是什么?
我有两个清单,比如Python 创建包含两个列表的dict最有效的方法是什么?,python,Python,我有两个清单,比如 x = ['a', 'b', 'c', 'd'] and y = [1, 2, 3, 4] 我必须从这两个列表中创建一个dict,这样结果才是正确的 { 'a': 1, 'b': 2, 'c': 3, 'd': 4 } 我用下面的方法来做 dict(zip(x, y)) 有没有更好、更快/更有效的方法 我必须在无数次和不同的列表上执行此操作 谢谢你的每一条评论,原来的方法很好用。在Python2.x中,还可以使用itertools模块中的函数。这两种方法中
x = ['a', 'b', 'c', 'd'] and
y = [1, 2, 3, 4]
我必须从这两个列表中创建一个dict,这样结果才是正确的
{
'a': 1,
'b': 2,
'c': 3,
'd': 4
}
我用下面的方法来做
dict(zip(x, y))
有没有更好、更快/更有效的方法
我必须在无数次和不同的列表上执行此操作
谢谢你的每一条评论,原来的方法很好用。在Python2.x中,还可以使用itertools
模块中的函数。这两种方法中的任何一种都有效:
import itertools
x = ['a', 'b', 'c', 'd']
y = [1, 2, 3, 4]
method1 = dict(zip(x, y))
method2 = itertools.izip(x, y)
在Python 3.x中,默认情况下,zip
返回一个迭代器,因此此方法将非常有效:
x = ['a', 'b', 'c', 'd']
y = [1, 2, 3, 4]
method1 = dict(zip(x, y))
如果您使用的是Python2.X,那么可以使用
izip
而不是zip
来返回迭代器。除此之外,你的方法会很有效。看看我为什么要回答一个老问题。