使用Python创建像{0:0,1:1,2:2}这样的字典的最佳方法是什么
这是我的代码:
print dict(range(3),range(3))
但是它显示错误:
Traceback (most recent call last):
File "c.py", line 7, in <module>
print dict(range(3),range(3))
TypeError: dict expected at most 1 arguments, got 2
我该怎么办,
谢谢
3 个回答
0
一种更长但容易理解的方法:
d={}
for x in range(3):
d[x]=x
print d
3
这个应该可以用
dict(zip(range(3),range(3)))
5
你可以使用字典推导式,这种方法在Python 2.7及更高版本中都可以用:
{ i: i for i in range(3) }
如果你使用的是更旧版本的Python,可以这样做:
dict((i, i) for i in range(3))