如何在 Python 中遍历字典 {}
这是我的代码:
a = {0:'000000',1:'11111',3:'333333',4:'444444'}
b = {i:j+'www' for i,j in a.items()}
print b
但是它显示了错误:
File "g.py", line 7
b = {i:j+'www' for i,j in a.items()}
^
SyntaxError: invalid syntax
我该怎么修正这个问题呢?
2 个回答
3
b = {i:j+'www' for i,j in a.items()} #will work in python3+
上面这个是一个 dict
推导式(注意是花括号)。这个功能是在Python3中引入的。
我猜你在用的是Python2.x,它只支持 list
推导式。
b = dict( (i:j+'www') for i,j in a.items() ) #will work in python2.4+
<-----generator exression------->
4
{i:j+'www' for i,j in a.items()}
dict((i,j+'www') for i,j in a.items())
在Python 3中,字典推导式可以正常使用。
你可以在这里看到示例:http://ideone.com/tbXLA(注意,我在Python 3中是以函数的方式调用print)。
如果你使用的是低于Python 3的版本,那么就会出现错误。
要实现这种概念,你需要使用列表或生成器表达式,这样可以创建一个包含键和值的元组。一旦这样做了,你就可以调用dict(),它接受一个元组列表。