2016-07-28 87 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解決了我的問題。 –