ImportError: нет модуля с именем шесть


103

Я пытаюсь создать проект OpenERP с зависимостями. Сейчас выдает эту ошибку

Traceback (most recent call last):
  File "openerp-client.py", line 105, in <module>
  File "modules\__init__.pyo", line 23, in <module>
  File "modules\gui\__init__.pyo", line 22, in <module>
  File "modules\gui\main.pyo", line 33, in <module>
  File "rpc.pyo", line 29, in <module>
  File "common\__init__.pyo", line 22, in <module>
  File "common\common.pyo", line 26, in <module>
  File "tools\__init__.pyo", line 28, in <module>
  File "dateutil\relativedelta.pyo", line 12, in <module>
ImportError: No module named six

Может ли кто-нибудь подсказать, что не так и как это можно исправить ???


В случае, если шесть хранятся под неправильной версией Python, см. Мой [kludge] [1] [1]: stackoverflow.com/questions/26859356/error-no-module-
named-

Ответы:


137

Вероятно, у вас не установлен sixмодуль Python. Вы можете найти его на pypi .

Чтобы установить его:

$ easy_install six

(если вы pipустановили, используйте pip install sixвместо этого)


6
Мне очень жаль, но этого очень не хватает. Почему так много модулей pip не устанавливают свои зависимости?
Swade

1
Понятия не имею, почему какой-то модуль python неправильно перечисляет свои зависимости. Возможно, автор не тестирует установку модуля в chroot, чтобы проверить правильность зависимостей.
Sylvain Defresne

Мне это было нужно в моем Pipfile для веб-приложения. Я использовал pipenv install six.
Blaskovicz

@StevenWade Я обнаружил, что виноват pip install git+...в этом; никаких депеш не отслеживалось. Установка версии pypi, удаление, а затем установка версии git + включает необходимые зависимости, хотя это кажется глупым.
tsbertalan

1
В Ubuntu для Python 2.7 я установил его с помощью sudo apt install python-six. Спасибо!
wjandrea

38

Если pip "говорит", что шесть установлено, но вы все равно получаете:

ImportError: No module named six.moves

попробуйте переустановить шесть (у меня сработало):

pip uninstall six
pip install six

Как вы сказали, я смог решить проблему после переустановки шести. Спасибо!
alones

Для меня также ... У меня был установлен пакет, но программа-свойства-gtk не работала. В конце концов я связал это с ошибкой импорта в шести. Пакет python3-six был установлен, но модуль не загружался. Я переустановил модуль с помощью apt, и проблема исправлена.
Тим Ричардсон

Очень полезно. Спасибо.
keramat

21

В Ubuntu и Debian

apt-get install python-six

делает свое дело.

Используйте, sudo apt-get install python-sixесли вы получаете сообщение об ошибке «В разрешении отказано».



2

Для решения указанной проблемы я сделал следующее. У меня возникла упомянутая проблема, когда я пытался запустить встроенный exe, даже если я успешно построил exe с помощью pyinstaller. Я делал это в Windows 10.

  1. перейдите на https://pypi.org/project/six/#files
  2. скачать "six-1.14.0.tar.gz (33.9 kB)"
  3. разархивируйте его, скопируйте и вставьте "six.py" в исходный каталог.
  4. импортировать модуль "шесть" в исходный код (импортировать шесть)
  5. запустить исходный скрипт.


1

в Ubuntu Bionic (18.04) шесть уже установлены для python2 и python3, но у меня возникает ошибка при запуске Wammu. Решение @ 3ygun помогло мне решить

ImportError: No module named six

при запуске Вамму

Если это произошло с программой python3, шесть идут с

pip3 install six

и если у вас нет pip3:

apt install python3-pip

с sudo под Ubuntu!

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.