有没有一种方法可以有效地迭代Python 2和Python 3中同时使用的字典中的值/项?生成器在Python 2和Python 3中统一遍历字典
在Python 2,我可以写
,并在Python 3,我有以下几种可能:
for x in mydict:
for x in mydict.keys():
for x in mydict.values():
for x in mydict.items():
所以,我的钥匙迭代与for x in mydict
,而且作品在Python 2和3中。但是有没有一种方法来迭代通用的值和键值对('项目')?我需要它来编写可以在两个Python版本中运行的Python代码。
(在一个侧面说明,与迭代其它障碍物可以很容易地绕过;取例如:
if sys.version_info.major<3:
from itertools import izip as zip, imap as map
然而,词典的方法不能容易地像map
和zip
重新定义。)
不限想法?
编辑:我想你的意思是说发电机遍历字典 – jamylak
@jamylak:是的,谢谢。 – Daniel