Не удалось импортировать itertools в Python 3.5.2
Я новичок в Python. Я пытаюсь импортировать izip_longest из itertools. Но я не могу найти импорт "itertools" в настройках интерпретатора Python. Я использую Python 3.5.2. Это дает мне следующую ошибку -
from itertools import izip_longest
ImportError: cannot import name 'izip_longest'
пожалуйста, дайте мне знать, каков правильный курс действий. Я тоже пробовал Python 2.7 и закончил с той же проблемой. Нужно ли использовать более низкую версию Python.
2 ответов
izip_longest был переименован to zip_longest в Python 3 (Примечание, нет i в начале), импортируйте это вместо:
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
одним из простых способов импорта любой функции является импорт объектов(например:импортировать itertools как это) Если вы не хотите скрыть другие функции. Поскольку функции в модулях меняются в соответствии с версией python, простой способ проверить, присутствует ли функция в модуле через dir ()
