Ошибка Python: "ImportError: нет модуля с именем six"

Я запускаю Python 2.7 на ОС Windows 7

Вот что я запускаю:

>>> import matplotlib.pyplot as plt

Затем я получаю следующее:

Traceback (most recent call last):
  File "<pyshell#3>", line 1, in <module>
    import matplotlib.pyplot as plt
  File "C:\Python27\lib\site-packages\matplotlib\pyplot.py", line 29, in <module>
    from matplotlib.figure import Figure, figaspect
  File "C:\Python27\lib\site-packages\matplotlib\figure.py", line 36, in <module>
    from matplotlib.axes import Axes, SubplotBase, subplot_class_factory
  File "C:\Python27\lib\site-packages\matplotlib\axes.py", line 20, in <module>
    import matplotlib.dates as _  # <-registers a date unit converter
  File "C:\Python27\lib\site-packages\matplotlib\dates.py", line 119, in <module>
    from dateutil.rrule import (rrule, MO, TU, WE, TH, FR, SA, SU, YEARLY,
  File "C:\Python27\lib\site-packages\dateutil\rrule.py", line 18, in <module>
    from six import advance_iterator, integer_types
ImportError: No module named six

Теперь я загрузил шесть из них: https://pypi.python.org/pypi/six

Я разархивировал его, и если я открою файл там, где называется setup.py, а затем я попытаюсь импортировать matplotlib, тогда он работает, но я не должен делать это каждый раз, когда хочу сделать сюжет? Нет ли способа заставить это работать автоматически?

Ответ 1

Вам необходимо установить его в свою систему. Это в основном означает поместить zip файл, где Python может его найти, но самым простым способом является pip install six. Это будет загружать его во второй раз.

Как и в инструкции по установке matplotlib, six является зависимостью пакета dateutil. Большинство разумных методов установки автоматически втягивают эту зависимость; если вы сделали pip install python-dateutil, в первую очередь, эта недостающая зависимость должна была быть удовлетворена за кулисами. Если вам требуется полностью ручная установка, вы должны внимательно прочитать эти инструкции.

Ответ 2

Я получил точно такое же сообщение об ошибке. И это швы есть много возможных причин. В моем случае я решил проблему, переустановив шесть

pip uninstall six ; pip install six

Я предполагаю, что предыдущая установка была прервана до полного завершения. Или, возможно, вопрос с разрешением. Или что-то еще... теперь слишком поздно, чтобы исследовать, что было настоящей причиной.

Ответ 3

для меня у меня установлены две версии matplotlib. Просто запустите "pip uninstall matplotlib" и снова запустите "pip install matplotlib". Для меня несколько doenloads испортили все. Сначала попробуйте это, и если это не поможет перейти к следующим шагам.

Ответ 4

В командной строке перейдите в папку, содержащую setup.py, и запустите

python setup.py install

Это установит пакет six в вашу папку Python site-packages, где будут жить все сторонние модули. Теперь вы можете импортировать matplotlib без проблем.

Ответ 5

Скопируйте файлы six.py и six.pyc в\Lib.

Ответ 6

Возможно, я опоздал на это, но у меня была такая же проблема. После того, как я установил Pandas, проблема исчезла. После очистки я получил это сообщение

"Успешно установлен Pandas pytz six"

Ответ 7

После долгого сражения он нашел способ его работы. Версия Python 3.4.

На самом деле, как говорят многие, вы можете загрузить шесть пакетов в виде .zip файла и извлечь содержимое в папку "пакеты сайтов" (C:\Python34\Lib\site-packages), чтобы файл init.py, шесть "модуля считаются оттуда.

После этого из того же файла init.py, когда мы запускаем python script, мы запускаем 4-5 ошибок модуля, заявляя, что модуль недоступен. Я нашел эту страницу чрезвычайно полезной после длительного поиска и просто продолжаю с состояниями ошибки IDLE.

Удачи! "