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

Я пытаюсь запустить программу на Python, но получаю ошибку

ImportError: No module named argparse

Я нашел вопрос "argparse Python modules in cli" здесь, в Stackru, и попробовал первый комментарий, т.е. выполнил команду

python -c "import argparse; print argparse"

что привело к

<module 'argparse' from '/usr/lib/python2.7/argparse.pyc'>

Мне кажется, что на машине установлен Python 2.7 (я не являюсь администратором) и argparse Модуль также присутствует. Поэтому интересно, почему модуль не найден. На другой машине скрипт работает как надо. В посте, указанном выше, есть комментарий, который может быть sys.path сломано. Я понятия не имею, что это значит, или как я могу изменить его значение. Есть идеи?

7 ответов

Попробуйте установить argparse:

easy_install argparse

На CentOS я решил это с yum install python-argparse, HT для LVA для правильного имени пакета.

В системе Debian вы можете использовать следующую команду для установки пакета argparse:

sudo apt-get install python-argparse

Вероятно, вы используете версию Python, отличную от той, которую вы выполняете в командной строке. Убедитесь, что скрипт использует этот интерпретатор: /usr/lib/python2.7, Эта установка имеет argparse наверняка, как вы это доказали с помощью импорта в своем первом посте.

Почему ваш сценарий может использовать другую установку Python? Это может быть результатом строки Shebang первой строки вашего скрипта, которая может указывать на другого интерпретатора Python, который не имеет argparse модуль установлен.

РЕДАКТИРОВАТЬ: Другая проблема может быть в том, что ваш скрипт очищает sys.path список, и это будет очень плохо, потому что все предустановленные модули не будут доступны...

Если ваш исходный файл имеет то же имя, что и argparse, и вы поместили его в текущий каталог со своими скриптами, вы можете столкнуться с проблемой.

Запустите эту команду: yum install -y python-argparse, Это можно исправить, когда вы CentOS.

У вас не установлен модуль для правильной версии python. Это можно исправить одним из двух способов.

  1. Переустановите python и модуль
  2. Изменение путей Python демонстрируется по одной из этих ссылок ( OSX, Windows(вы не должны делать это в Windows, я выбрал XP, потому что это то, что я запускаю), Linux

Один из них должен работать, но если он не пытается перезагрузиться. УДАЧИ!!:)

Другие вопросы по тегам