Подтвердить что ты не робот

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

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

ImportError: No module named argparse

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

python -c "import argparse; print argparse"

в результате чего

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

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

4b9b3361

Ответ 1

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

easy_install argparse

Ответ 2

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

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

EDIT: Еще одна проблема может заключаться в том, что ваш script очистит список sys.path, и это будет очень плохо, потому что все предварительно установленные модули не будут доступны...

Ответ 3

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

sudo apt-get install python-argparse

Ответ 4

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

Ответ 5

У вас нет модуля, установленного в правильную версию python. Существует один из двух способов исправить этот

  • Переустановите python и модуль
  • Изменение путей python показано на одной из этих ссылок (osx, windows (вы должны 't должен сделать это на окнах, которые я выбрал xp, потому что это то, что я запускаю), linux

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

Ответ 6

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