Почему питон не видит файл py

Обновлено: 04.07.2024

Я набираю python в командной строке, но командная строка говорит, что python не распознается как внутренняя или внешняя команда программа или пакетный файл. Что мне делать?

Примечание. Я установил Python 2.7 и Python 3.2 на свой компьютер.

Наконец-то это сработало .

Мне нужно было что-то сделать, чтобы заставить его работать

  1. Добавьте C: \ Python27 \ в конец системной переменной PATH
  2. Добавьте C: \ Python27 \ в конец системной переменной PYTHONPATH

Я должен был добавить их к обоим, чтобы это работало.

Если я добавил какие-либо подкаталоги, по какой-то причине это не сработало.

Спасибо всем за ваши ответы.

Видео было очень полезным.

  1. Перейти к системным свойствам -> Advance (или введите "env системы" в меню Пуск.)
  2. Нажмите переменные среды
  3. Измените переменную "PATH"
  4. Добавьте 2 новых пути 'C: \ Python27' и 'C: \ Python27 \ scripts'
  5. Запустите cmd еще раз и введите python.

это сработало для меня

Я установил последний Python для Win10 из выпусков для Windows . Просто введите py в Command Prompt Window , чтобы запустить Python ,

Помните, что в моем случае Python был установлен в каталог C:\Users\sg7\AppData\Local\Programs\Python\Python36>

Когда я нахожусь на C:\Users\sg7> уровень каталога python можно вызвать, набрав AppData\Local\Programs\Python\Python36\python

Более новый Python 3.7 будет установлен на: C:\Users\YourUserNameHere\AppData\Local\Programs\Python\Python37

Если вы хотите, вы можете добавить в свою переменную окружения путь: %USERPROFILE%\AppData\Local\Programs\Python\Python36

Калле разместил ссылку на страницу, на которой есть это видео в это, но это сделано на XP. Если вы используете Windows 7:

  1. Нажмите клавишу Windows.
  2. Введите "system env". Нажмите ввод.
  3. Нажмите alt + n
  4. Нажмите alt + e
  5. Нажмите вправо, а затем ; (это точка с запятой)
  6. Не добавляя пробел, введите его в конце: C:\Python27
  7. Хит дважды. Нажмите Esc.
  8. Используйте windows key + r , чтобы открыть диалоговое окно запуска. Введите python и нажмите ввод.

Я, пожалуй, самый начинающий пользователь здесь, я потратил шесть часов, чтобы просто запустить python из командной строки в Windows 8. После того, как я установил 64-битную версию, я удалил ее и заменил на 32-битную версию , Затем я попробовал большинство предложений здесь, особенно путем определения пути в системных переменных, но все же это не сработало.

Тогда я понял, когда набрал в командной строке: echo% path%

Путь до сих пор не был направлен в C: \ python27. Поэтому я просто перезагрузил компьютер, и теперь он работает.

Они дали нам сценарий, чтобы сделать это для нас уже

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

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

Были мои и теперь python работает в cmd

Вы должны добавить исполняемый файл python в свой SYSTEM PATH, выполните следующие действия: My Computer > Properties > Advanced System Settings > Environment Variables > Затем в системных переменных я создаю новую переменную с именем «PythonPath». В этой переменной у меня есть "C:\Python27\Lib;C:\Python27\DLLs;C:\Python27\Lib\lib-tk;C:\other-foolder-on-the-path" .

введите описание изображения здесь

Похоже, что исполняемый файл python не найден в вашем PATH, который определяет, где он ищет исполняемые файлы. См. официальные инструкции для получения инструкций о том, как получить исполняемые файлы python в вашем PATH.

Добавьте каталог python bin в переменную PATH вашего компьютера. Она указана в разделе Переменные среды в свойствах компьютера -> Расширенные настройки в Windows 7. Для Windows 8 должно быть то же самое.

Вам нужно добавить python в вашу PATH. Я могу ошибаться, но Windows 7 должен иметь тот же cmd, что и Windows 8. Попробуйте это в командной строке. Использование setx навсегда вносит изменения в вашу PATH. Обратите внимание, что здесь нет знаков равенства и используются кавычки.

Установите c:\python27 в каталог версии Python, которую вы хотите запустить, набрав python в командную строку.

Всего несколько комментариев:

Не устанавливайте PYTHONPATH , если все, что вам нужно, это получить Python для PATH . Переменная окружения PYTHONPATH сообщает Python, где искать модули для импорта. Установка в C:\Python27\ ничего полезного не даст, хотя, вероятно, она безвредна.

Изменение переменных среды (включая PATH ) из «Редактирования системных переменных» не влияет на уже запущенные процессы. Это означает, что вы должны перезапустить cmd.exe , чтобы изменения вступили в силу. Однако перезагрузка не требуется.

При изменении PATH также добавьте подкаталог Scripts. Или, говоря другими словами (и используя предыдущий пример): добавьте ;C:\Python27;C:\Python27\Scripts . Это позволит вам запускать сценарии, такие как easy_install , pip , virtualenv или sphinx из командная строка - как только вы установите те, что есть. Это примерно так же, как UNIX-у для Windows. (NB. Подкаталог Scripts отсутствует после чистой установки Python, но будет создан при необходимости.)

Не добавляйте дополнительные Lib или DLL в каталоге PATH . В этом нет необходимости, и это может навредить.

Если вы установили несколько версий Python (что не так уж редко), вам лучше не поместить любую из них в PATH , но вместо этого создайте разные ярлыки для cmd.exe для разных версий, которые устанавливают ---- +: = 17 =: + ---- для каждой версии. Вас также может заинтересовать PEP-397 .

Когда вы добавляете каталог python в путь (Computer> Свойства> Дополнительные параметры системы> Дополнительные переменные> Системные переменные> Путь> Изменить), не забудьте добавить точку с запятой, а затем убедитесь, что что вы добавляете точный каталог, где хранится файл "python.exe" (например, C: \ Python \ Python27, если именно там хранится "python.exe"). Затем перезапустите командную строку.

Просто перейдите с помощью команды py . Я использую Python 3.6.2 на Windows 7, и он работает просто отлично.
Я удалил все пути Python из системного каталога, и эти пути не отображаются, когда я запускаю команду echo %path% в cmd. Python по-прежнему работает нормально.
Я столкнулся с этим, случайно нажав клавишу ввода при вводе python .

РЕДАКТИРОВАТЬ: я не упомянул, что я установил python в пользовательскую папку C: \ Python \

Если вы работаете с командной строкой и столкнулись с проблемой, даже после добавления пути python к системной переменной PATH.

Не забудьте перезапустить командную строку (cmde.exe).

Это один вариант для офисных работников, использующих компьютер, которым пользуются другие.

Я поместил свой путь пользователя в path и создал переменные PYTHONPATH в переменной PATH на моем компьютере. Она указана в разделе Переменные среды в свойствах компьютера -> Расширенные настройки в Windows 7.

C: \ Users \ randuser \ AppData \ Local \ Programs \ Python \ Python37

Это позволило мне использовать командную строку.

Надеюсь, это помогло.

Но будьте осторожны при установке; установка по умолчанию не предусматривает добавление пути Python к переменным среды на панели управления, если у вас есть компьютер с Windows, но вы должны изменить настройку так, чтобы установка выполнялась, и все это будет выполнено само собой.

Чувствуете себя неуверенно в отношении редактирования переменной Path? Обеспокоены тем, что этот метод может измениться с новыми выпусками Python? Если это так, сделайте следующее:

введите описание изображения здесь

Перезапустите установщик Python (например, в разделе Downloads, python-3.7.2.exe). Выберите «Изменить» (Добавить или удалить отдельные функции.) Проверьте все дополнительные функции, которые вы хотите (вероятно, без изменений), затем нажмите [Далее]. Отметьте [x] «Добавить Python в переменные окружения» и [Установить].

Я с завидной регулярностью сталкиваюсь со всевозможными ошибками, так или иначе связанными с модулями Python. Существует огромное количество разнообразных модулей Python, которые разработчики активно используют, но далеко не всегда заботятся об установке зависимостей. Некоторые даже не удосуживаются их документировать. Параллельно существует две мажорные версии Python: 2 и 3. В разных дистрибутивах отдано предпочтение одной или другой версии, по этой причине самостоятельно установленную программу в зависимости от дистрибутива нужно при запуске предварять python или python2/python3. Например:

Причём обычно не происходит никаких проверок и угадали ли вы с выбором версии или нет вы узнаете только при появлении первых ошибок, вызванных неправильным синтаксисом программного кода для данной версии.

Также прибавляет путаницу то, что модули можно установить как из стандартного репозитория дистрибутивов, так и с помощью pip (инструмент для установки пакетов Python).

Цель этой заметки — рассмотреть некоторые характерные проблемы модулей Python. Все возможные ошибки вряд ли удастся охватить, но описанное здесь должно помочь понять, в каком примерно направлении двигаться.


Отсутствие модуля Python

Большинство ошибок модулей Python начинаются со строк:

В них трудно разобраться, поэтому поищите фразы вида:

  • ModuleNotFoundError: No module named
  • No module named
  • ImportError: No module named

За ними следует название модуля.

Поищите по указанному имени в системном репозитории, или попробуйте установить командой вида:

Пакет Python установлен, но программа его не видит

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

Команда pip также имеет свои две версии: pip2 и pip3. Если версия не указана, то это означает, что используется какая-то из двух указанных (2 или 3) версий, которая является основной в системе. Например, сейчас в Debian и производных по умолчанию основной версией Python является вторая. Поэтому в репозитории есть два пакета: python-pip (вторая версия) и python3-pip (третья).

В Arch Linux и производных по умолчанию основной версией является третья, поэтому в репозиториях присутствует пакет python-pip (третья версия) и python2-pip (вторая).

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

Установлена новая версия модуля, но программа видит старую версию

Я несколько раз сталкивался с подобными необъяснимыми ошибками.

Иногда помогает удаление модуля командой вида:

Также попробуйте удалить его используя системный менеджер пакетов.

Если модуль вам нужен, попробуйте вновь установить его и проверьте, решило ли это проблему.

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

  • /usr/lib/python2.7/site-packages/модуль
  • /usr/lib/python3.7/site-packages/модуль

Ошибки, в которых присутствует слово AttributeError, NoneType, object has no attribute обычно вызваны не отсутствием модуля, а тем, что модуль не получил ожидаемого аргумента, либо получил неправильное число аргументов. Было бы правильнее сказать, что ошибка вызвана недостаточной проверкой данных и отсутствием перехвата исключений (то есть программа плохо написана).

В этих случаях обычно ничего не требуется дополнительно устанавливать. В моей практике частыми случаями таких ошибок является обращение программы к определённому сайту, но сайт может быть недоступен, либо API ключ больше недействителен, либо программа не получила ожидаемые данные по другим причинам. Также программа может обращаться к другой программе, но из-за ошибки в ней получит не тот результат, который ожидала, и уже это вызывает приведённые выше ошибки, которые мы видим.

Опять же, хорошо написанная программа в этом случае должна вернуть что-то вроде «информация не загружена», «работа программы N завершилась ошибкой» и так далее. Как правило, нужно разбираться с причиной самой первой проблемы или обращаться к разработчику.

Модуль установлен, но при обновлении или обращении к нему появляется ошибки

Это самая экзотическая ошибка, которая вызвана, видимо, повреждением файлов пакета. К примеру, при попытке обновления я получал ошибку:

При этом сам модуль установлен как следует из самой первой строки.

Проблема может решиться удалением всех файлов пакета (с помощью rm) и затем повторной установки.

К примеру в рассматриваемом случае, удаление:

После этого проблема с модулем исчезла.

Заключение

Пожалуй, это далеко не полный «справочник ошибок Python», но если вы можете сориентироваться, какого рода ошибка у вас возникла:

  • отсутствует модуль
  • модуль неправильной версии
  • модуль повреждён
  • внешняя причина — программа не получила ожидаемые данные

Так вот, если вы хотя бы примерно поняли главную причину, то вам будет проще понять, в каком направлении двигаться для её решения.

Мне трудно понять, как работает импорт модулей в Python (я никогда раньше не делал этого ни на каком другом языке).

Допустим, у меня есть:

Теперь я пытаюсь получить что-то вроде этого:

Тем не менее, я определенно делаю что-то не так, поскольку Python не видит, что myapp является модулем:

В вашем конкретном случае похоже, что вы пытаетесь импортировать SomeObject из сценариев myapp.py и TestCase.py. Из myapp.py сделать

Так как он находится в той же папке. Для TestCase.py сделайте

Однако , это будет работать, только если вы импортируете TestCase из пакета. Если вы хотите напрямую запустить python TestCase.py , вам придется возиться с вашим путем. Это можно сделать в Python:

Хотя, как правило, это не рекомендуется.

В общем, если вы хотите, чтобы другие люди использовали ваш пакет Python, вы должны использовать distutils создать скрипт установки. Таким образом, любой может легко установить ваш пакет с помощью команды, подобной python setup.py install , и он будет доступен везде на их компьютере. Если вы серьезно относитесь к пакету, вы можете даже добавить его в индекс пакетов Python, PyPI.

pip install в Windows 10 по умолчанию устанавливается в 'Program Files / PythonXX / Lib / site-packages', который является каталогом, требующим административных привилегий. Поэтому я исправил проблему, запустив pip install от имени администратора (вы должны открыть командную строку от имени администратора, даже если вы вошли в систему с учетной записью администратора). Также безопаснее вызывать pip из python.
например,
python -m pip install <package-name>
вместо
pip install <package-name>

Экспортный путь - это хороший способ. Другой способ - добавить .path к вашему местоположению пакетов сайта. На моем mac мой python хранит пакеты сайтов в / Library / Python, показанном ниже

Я создал файл с именем awesome.pth в /Library/Python/2.7/site-packages/awesome.pth и в файле поместил следующий путь, который ссылается на мои удивительные модули

В вашем первом каталоге myapp вы можете добавить файл setup.py и добавить два кода Python в setup.py

В вашем первом каталоге myapp в командной строке используйте pip install -e. установить пакет

Потому что имя вашего проекта совпадает с myapp.py, что делает его поиск в документе проекта первым

Функция import ищет файлы в вашей среде PYTHONPATH. переменная и ваш локальный каталог. Таким образом, вы можете либо поместить все свои файлы в один каталог, либо экспортировать путь, набрав в терминале:

PyCharm больше не распознает файлы Python. Путь интерпретатора установлен правильно.

Скриншот

Это не не по теме: software tools commonly used by programmers указано в разделе FAQ What kind of questions can I ask here? , это как раз тот случай. Зачем голосовать за его закрытие?

Пожалуйста, проверьте File | Settings ( Preferences в macOS) | Editor | File Types , убедитесь, что имя или расширение файла не указано в текстовых файлах.

Чтобы решить эту проблему, удалите его из текстовых файлов и дважды проверьте, .py связано ли расширение с файлами Python .

Текст

У меня была такая же проблема, но с .egg-link файлом. Если вы используете удаленный интерпретатор, вам может потребоваться удалить интерпретатор и добавить новый. У меня была та же проблема, но имя файла было добавлено к расширению текстового файла Есть идеи, почему файл вообще добавлен в этот список текстовых файлов? Для меня это было спрятано в Setting | Editor | File Types . (2017.3.2) Мое фактическое имя файла было добавлено в список «типов файлов» вместо «текст» . прямо в самом низу списка. Муста нажал не ту кнопку, создав его.

У меня была аналогичная проблема, когда определенные .py файлы отображались как обычные текстовые файлы после завершения, таким образом, рендеринг кода без синтаксической окраски, функций завершения табуляции и т.д. Используя этот пост в качестве отправной точки для отладки проблемы, я обнаружил следующее:

  1. (из OSX): PyCharm → Настройки → Настройки IDE → Типы файлов.
  2. Выберите соответствующий тип файла из списка в верхней половине этого диалогового окна Recognized File Types (в моем случае текстовые файлы)
  3. Во второй половине диалогового окна Registered Patterns были перечислены имена файлов, с которыми у меня возникли проблемы с именованием / синтаксисом. Я щелкнул по каждому из них, а затем по - очереди щелкнул по каждому, чтобы удалить их из Registered Patterns списка.
  4. Нажмите Apply
  5. Вздох облегчения, когда подсветка синтаксиса возвращается и значок снова становится значком файла Python.
Какого черта, почему там был мой файл? В любом случае, это сработало для меня (в Windows). Остается вопрос, как этот файл оказался там, но да - вот и все! У меня сработало исправление PyCharm 3.4.1 для Linux. views.py был случайно добавлен в список текстовых файлов . Несколько дней разочаровали, спасибо.

Я случайно создал текстовый файл myfilename , переименовал его в myfilename.py версию, но он остался с форматированием текстового файла даже после изменения расширения.

Вот как я исправил это для PyCharm 2017.2 для Windows.

  1. Идти к File > Settings > Editor > File Types > Text
  2. В списке Registered Patterns я нашел новое myfilename.py .
  3. Удалите его из списка - кнопкой
  4. Нажмите Ok
Сделал то же самое, возникла та же проблема, но расширение файла .py отсутствует в списке «Текст», и PyCharm по-прежнему не распознает его даже после перезапуска (версия 2018.2) действительно странное поведение PyCharm там . Зачем вам этот файл в черный список .

Наконец-то он заработал!

У меня была такая же проблема. Я попытался удалить кеши pycharm в папках

/ Library, но безрезультатно. В журнале все время говорилось, что «Некоторые скелеты не удалось создать . »

Итак, вот что сработало.

  1. Зайдите в настройки
  2. В настройках проекта нажмите « Интерпретаторы проекта», а затем « Настроить интерпретаторы».
  3. Удалите существующие интерпретаторы (используя ' - ' и внизу), а затем нажмите OK внизу
  4. Если у вас загружен проект, он скажет: «У вас нет интерпретатора, настройте его сейчас. Вы можете щелкнуть по нему или вернуться в настройки-> Интерпретатор проекта-> Настроить интерпретаторы.
  5. Щелкните +, чтобы добавить нового интерпретатора. Если вы используете встроенный в os x python, вы можете выбрать нужную версию из списка.
  6. Снова нажмите ОК , подождите минуту или две, чтобы перестроить индексы, и все заработает (по крайней мере, для меня)
Для моей проблемы с PyCharm, видящей «встроенный» как нерешенный. Это решило это.

Наиболее частая проблема заключается в том, что у вас есть .py в типах файлов txt.

Другой случай, который случается время от времени, - это то, что вы связали фактическое имя файла с типом файла txt.

Решение осталось прежним

перейдите к файлу-> настройки-> типы файлов-> текстовые файлы и найдите .py или «имя файла», которое форматируется как текст.

Это может показаться действительно редким случаем, но это случилось со мной только сейчас, и ваш ответ помог. Я оказался в этом состоянии благодаря «нормальному поведению», выполнив следующие шаги: 1. Я щелкаю правой кнопкой мыши папку в дереве файлов и выбираю «новый файл» вместо «новый файл python». 2. Я предполагал, что .py будет добавлен, поэтому я набрал имя моего файла python (предположим, что это foo ) и нажал Enter. 3. Диалоговое окно выскочило побудило меня связать файл с типом файла, и , когда я просто добавить файл я приукрасил текст и просто изменил входной сигнал от foo к foo.py мысли , что мне нужно имя файла. 4. Я переименовал файл, foo.py думая, что он не работает или что-то в этом роде. 5. Теперь файл назван, foo.py и у меня есть правило, согласно которому foo.py это текстовый файл.

PyCharm Версия: 2020.1.4 Сборка: 201.8743.11

Вот что теперь работает:

Файл> Управление настройками IDE> Восстановить настройки по умолчанию

Единственная проблема с этим заключается в том, что если вы добавили много пользовательских настроек, вам придется вернуться и добавить их снова.

Читайте также: