2016-07-28 82 views
6

我是Python新手。我正在尝试从itertools中导入izip_longest。但是我无法在Python解释器的首选项中找到导入“itertools”。我正在使用Python 3.5.2。它给了我下面的错误 -未能在Python 3.5.2中导入itertools

from itertools import izip_longest 
ImportError: cannot import name 'izip_longest' 

请让我知道什么是正确的行动方针。我也尝试过Python 2.7,并以相同的问题结束。我需要使用较低版本的Python吗?

回答

15

izip_longest在Python 3(注意,没有i在开始),进口,与其改名zip_longest:在你的代码

from itertools import zip_longest 

,并使用该名称。

如果你需要写在Python 2和3是双向代码,赶上ImportError尝试其他的名称,然后重命名:

try: 
    # Python 3 
    from itertools import zip_longest 
except ImportError: 
    # Python 2 
    from itertools import izip_longest as zip_longest 

# use the name zip_longest 
+0

感谢@Martijn。将其更改为zip_longest解决了我的问题。 –