如何使用Python 2.7在itertools中提供zip_longest

Ton*_*oni 8 python python-itertools python-2.7

当试图在Windows 10上运行的Python Jupyter 2.7 nb上导入此函数时,我收到此错误:

在此输入图像描述

我相信我过去没有遇到任何问题,因为我使用的是Python 3.所以我想知道它是否只是在Python 2中不可用,或者是否有一种方法可以使它工作.

Aja*_*234 22

对于Python 3,方法是zip_longest:

from itertools import zip_longest
Run Code Online (Sandbox Code Playgroud)

对于Python 2,方法是izip_longest:

from itertools import izip_longest
Run Code Online (Sandbox Code Playgroud)


Ali*_*aei 8

如果您不知道哪个版本的python运行脚本,您可以使用此技巧:

try:
    from itertools import zip_longest
except ImportError:
    from itertools import izip_longest as zip_longest

# now this works in both python 2 and 3
print(list(zip_longest([1,2,3],[4,5])))
Run Code Online (Sandbox Code Playgroud)