Pyinstaller не является внутренней или внешней командой исполняемой программой или пакетным файлом
Написал свою первую маленькую прогу. Писал на Python 3.9. В проге использованы модули. Пробовал скомпелировать ее с помощью pyinstaller в консоле, но выдает ошибку: "pyinstaller" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом."
Погуглил - пишут, pyinstaller не поддерживает версии выше Python 3.7. Так ли это? И если так, то чем прост скомпелировать код в exe?
Наверное, глупый вопрос, но рискну: как поставить pyinstaller в PATH? Устанавливал через консоль, мне казалось все должно было встать как надо
Lamer161, видимо как-то неправильно установили. Посмотрите в папке Scripts там, где у вас питон установлен. Например у меня он лежит в C:\Python38
Василий Банников, в этой папке pyinstallera нет. Собственно, я вообще не могу его найти. Может попробовать установить еще раз?
Lamer161, видимо да)
Обратите внимание, если он какую-то ошибку выдаст.
Мне пришлось от админа запускать, чтобы установился, например.
Это последняя строка.
Новая папка создана, но exeшника там нет
Олег Дзен, только что попробовал установить питон с нуля.
1. Поставил питон из магазина винды
2. Переоткрыл консоль
3. Пишу python 3 -m pip install pyinstaller. Вроде установился, но там на что-то ругалось
4. Через команду pyinstaller не запускается
5. Через python3 -m pyinstaller тоже
6. Обновляю pip через python3 -m pip install --upgrade pip
7. Во время обновления pip ругнулся
8. Смотрю что по этому пути лежит - а pyinstaller там.
9. пишу в консоли $env:PATH +=";" + "тот путь"
10. pyinstaller работает
11. Теперь в свойствах компьютера выставляю PATH на постоянную.
Объясню подробнее. В Python есть такая модуль как pyinstaller. Она позволяет .py файлы превращать в .exe
Сначала я скачал сам модуль.
C:\Users\User\Desktop\testing (Python)>pip install pyinstaller
Requirement already satisfied: pyinstaller in c:\users\user\appdata\local\packages\pythonsoftwarefoundation.python.3.9_qbz5n2kfra8p0\localcache\local-packages\python39\site-packages (4.2)
Requirement already satisfied: altgraph in c:\users\user\appdata\local\packages\pythonsoftwarefoundation.python.3.9_qbz5n2kfra8p0\localcache\local-packages\python39\site-packages (from pyinstaller) (0.17)
Requirement already satisfied: pefile>=2017.8.1 in c:\users\user\appdata\local\packages\pythonsoftwarefoundation.python.3.9_qbz5n2kfra8p0\localcache\local-packages\python39\site-packages (from pyinstaller) (2019.4.18)
Requirement already satisfied: pyinstaller-hooks-contrib>=2020.6 in c:\users\user\appdata\local\packages\pythonsoftwarefoundation.python.3.9_qbz5n2kfra8p0\localcache\local-packages\python39\site-packages (from pyinstaller) (2021.1)
Requirement already satisfied: pywin32-ctypes>=0.2.0 in c:\users\user\appdata\local\packages\pythonsoftwarefoundation.python.3.9_qbz5n2kfra8p0\localcache\local-packages\python39\site-packages (from pyinstaller) (0.2.0)
Requirement already satisfied: setuptools in c:\program files\windowsapps\pythonsoftwarefoundation.python.3.9_3.9.1264.0_x64__qbz5n2kfra8p0\lib\site-packages (from pyinstaller) (49.2.1)
Requirement already satisfied: future in c:\users\user\appdata\local\packages\pythonsoftwarefoundation.python.3.9_qbz5n2kfra8p0\localcache\local-packages\python39\site-packages (from pefile>=2017.8.1->pyinstaller) (0.18.2)
Как видите, у меня он уже установлен.
Мы все знаем, как использовать этот модуль.
C:\Users\User\Desktop\testing (Python)>pyinstaller -F test.py
"pyinstaller" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
Иван Садыков
Сделай системную переменную PyIn = C:\\. Pyinstaller
И найди путь до pyinstaller и запиши это как %PyIn%\bin(?) в Path
Юра Крысанов
Иван Садыков ответил Юре
Иван Садыков ответил Юре
Потом добавь её в Path.
При этом там может быть не \bin, а другая папка. Эта папка должна содержать файл pyinstaller
Юра Крысанов ответил Ивану
Причины ошибки «Не является внутренней или внешней командой» при выполнении команд в командной строке Windows 10 и Windows 11
Для того, чтобы понять суть ошибки, давайте рассмотрим, что происходит при выполнении команды в командной строке, в качестве примера будем использовать такой код:
- В случае, если «команда» является собственной встроенной командой консоли (в качестве примера — cls), она выполняется с заданными параметрами.
- Если «команда» — это какой-то файл .exe, .cmd, .bat или иной, например, pip, python или adb, выполняется попытка его запуска из расположения, где запущена командная строка (выделено на изображении ниже) или из расположений, добавленных в системную переменную PATH (о которой поговорим подробнее далее). При удачном запуске и правильно переданных параметрах команда выполняется.
Отсюда следуют наиболее распространённые причины появления ошибки при выполнении команды:
- Самая распространённая причина — отсутствие исполняемого файла в папке, где запущена командная строка и в папках, содержащихся в PATH.
- Ошибки при написании команды: при ошибке в имени файла, он не будет найден, что и приведёт к указанной ошибке.
- Файл отсутствует где-либо, например, вы пробуете использовать telnet, в то время, когда соответствующий компонент Windows не установлен.
- Редко — запускаемый через командную строку файл действительно не является исполняемой программой: изначально сам по себе или из-за повреждений.
Теперь о том, что делать в рассматриваемой ситуации.
Для исправления ошибки «Не является внутренней или внешней командой, исполняемой программой или пакетным файлом» в зависимости от ситуации можно использовать следующие подходы.
Переход к папке с исполняемым файлом в командной строке
Если выполнение команды требуется не на регулярной основе, достаточно перейти в командной строке в папку, содержащую нужный файл, делается это следующим образом:
- Например, мы знаем, что python.exe для последней версии Python на момент написания этой статьи располагается в папкеpip.exe — там же во вложенной папке Scripts (если окажется не ясным, как попасть в эту папку, процесс показан в видео ниже), adb.exe — где-то в папке с platform-tools и так далее. Скопируйте этот путь, сделать это можно из адресной строки проводника.
- Если командная строка запущена на том же диске, где находится нужный исполняемый файл, введите команду вида:
- Если командная строка запущена на диске C:, а исполняемый файл находится на другом диске, то перед 2-м шагом используйте команду вида (здесь D меняем на нужную букву диска) D: с последующим нажатием Enter.
- Введите нужную команду, которая ранее сообщала об ошибке — теперь она должна выполниться успешно.
Добавление папки с программой в системную переменную среды PATH
В случае, когда использование команд требуется регулярно, например, для git, разумным будет добавить папку с этим исполняемым файлом в PATH, чтобы затем в любой момент времени выполнять команды, независимо от того, в какой папке открыта командная строка:
Примечание: если ошибка возникает при использовании команд python, обратите внимание, что при первоначальной установке вам предложат добавить необходимые пути в PATH (отметка Add Python to PATH), то же самое часто бывает и при установке других программ:
Установка недостающих компонентов
Иногда проблема возникает из-за того, что нужный файл попросту отсутствует на компьютере:
- Вы пробуете использовать команды telnet, но не зашли в Панель управления —Программы и компоненты — Включение или отключение компонентов Windows и не включили «Клиент Telnet».
- Запускаете команды pyinstaller, но предварительно не установили его командой pip install pyinstaller
- Пробуете использовать команды adb.exe, но не установили необходимые компоненты Android SDK Platform Tools.
Аналогичная ситуация может быть и для многих других, не входящих в стандартную поставку Windows 10 и Windows 11 компонентов, например, java.
Если ошибка возникает при запуске системных инструментов Windows
Видео инструкция
Надеюсь, статья и видео помогли разобраться с проблемой и помогли в её решении. Остаются вопросы? — задавайте их в комментариях, я постараюсь ответить.
Сегодня поговорим об установке Python и о первых проблемах с которыми могут столкнуться начинающие программисты. После установки Python все советую проверит правильность его установки введя в командной строке Python, после этого вы должны увидеть установленную версию питона. Так же вы сможете вводим простенькие команды и выполнять их через командную строку например, введя print(«привет»), код должен выполниться и отобразить просто «Привет».
«Вам нужно установить путь к pip в переменные окружения»
Думаю новичку это абсолютно ни о чем не говорит, он еще больше запутается. Поэтому я решил подробно описать решение данной проблемы.
Простое решение проблемы в Windows 10
«PIP» не является внутренней или внешней командой, исполняемой программой или пакетным файлом
Тоже самое и с Python
«Python» не является внутренней или внешней командой, исполняемой программой или пакетным файлом
Вам нужно добавить значения в переменную Path, рассказывать что это не буду, просто открываем свойства компьютера и выбираем «Дополнительные параметры системы».
Далее в свойствах системы переходим во вкладку «Дополнительно» и снижу нажимаем «Переменные среды».
В открывшемся окне в верхней части отмечаем переменную «Path» и нажимаем изменить.
В поле «Значение переменной» дописываем путь до папки в которой у вас установлен Питон, в моем случае это С:\Python, так же нужно указать путь до папки где лежит файл pip.exe у меня это С:\Python\Scripts. Дописываем через ; вот так.
Рекомендую изменять стандартный путь установки Питона на С:\Python.
Теперь проверяем результат запускаем командную строку и пишем сначала «PIP».
Потом пробуем написать «Python», после шеврона (>>>) можно уже написать какой нибудь код например, print(«Привет!»).
Если выше описанное для вас сложно, то можно переустановить сам Питон, отметив в главном окне пункт «Add Python 3.9 to PATH».
В процессе установки все пути будут прописаны автоматически. Вот так можно избавиться от ошибки «не является внутренней или внешней командой, исполняемой программой или пакетным файлом», которая появляется в командной строке при вводе «PIP» или «Python».
Читайте также: