Pyinstaller не является внутренней или внешней командой исполняемой программы или пакетного файла
Обновлено: 21.11.2024
В связи с войной в Украине мы находимся в сложной жизненной ситуации, будем очень признательны за любую помощь.
Askto.pro
Мобильное меню
Главная / Вопросы / Как исправить ошибку «pyinstaller не является внутренней или внешней командой, исполняемой программой или пакетным файлом»?
Как исправить ошибку «pyinstaller не является внутренней или внешней командой, исполняемой программой или пакетным файлом»?
Я написал свою первую небольшую программу. Он писал на Python 3.9. Программа использует модули. Пытался скомпилировать с помощью pyinstaller в консоли, но выдает ошибку: "pyinstaller" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом. "
Погуглил - пишут, что pyinstaller не поддерживает версии выше Python 3.7. Так ли это? И если да, то насколько просто компилировать код в exe?
3 ответа
Вопрос закрыт.
Если кто-то столкнется с подобной проблемой — перед установкой pyinstaller напрямую нужно погонять колесо pip install и тогда все будет работать на последних версиях
Вашего pyinstaller нет в вашем PATH
Возможно глупый вопрос, но рискну: как поставить pyinstaller в PATH? Установил через консоль, мне показалось, что все должно было встать как надо
Хосе, как ты его установил? Через pip установить pyinstaller? Он точно установлен?
Жозе, видимо как-то неправильно установили. Посмотрите в папке Scripts, где у вас установлен python. Например, у меня это в C:\Python38
Кевин, в этой папке нет pyinstallera. Вообще никак не могу найти. Могу ли я попробовать установить его снова?
Жозе, видимо да)
Обратите внимание, если он выдает какую-то ошибку.
Например, для установки мне пришлось бежать от администратора.
Это последняя строка.
Создана новая папка, но exe-файла там нет
Хосе, я бы попробовал переустановить python. Путь с кириллицей выглядит очень подозрительно.
Хосе только что попытался установить Python с нуля.
1. Поставьте питон из магазина Windows
2. Снова открыл консоль
3. Я пишу python 3 -m pip install pyinstaller. Вроде установилось, но ругань на что-то была
4. Команда pyinstaller не запускается
5. Через python3 -m pyinstaller тоже
6. Обновите pip через python3 -m pip install –обновите pip
7. Во время обновления пип выругался
9. Пишу в консоли $env:PATH=";" «этот путь»
10.pyinstaller работает
11. Теперь в свойствах компьютера я установил константу PATH.
Я пытаюсь использовать pyinstaller в cmd, но получаю сообщение об ошибке:
Когда я использую эту команду в папке Scripts в python, она работает:
Как это решить?
18 ответов 18
Вы должны изменить переменную среды User PATH, включив в нее C:\Users\[ИМЯ ПОЛЬЗОВАТЕЛЯ]\AppData\Local\Programs\Python\Python36-32\Scripts .
О том, как добавить/изменить переменные среды PATH, см. здесь.
Скопируйте pyinstaller.exe в папку, в которой находится файл .py, который вы хотите преобразовать. Когда вы закончите, просто удалите «pyinstaller.exe». Удачи.
Для Python 3.7 вам нужно будет добавить папку Scripts из AppData/Roaming (%appdata%) в переменную PATH.
Я правильно настроил путь к скрипту, мне пришлось запустить python -m PyInstaller script.py, чтобы он заработал
Для каждого сценария я должен следовать этому шаблону: python -m [имя сценария] [аргументы]
Питон версии 3.10.0
Во-первых, вам нужно знать, где находится pyinstaller. В моем случае я побежал
Перед удалением программа попросит вас подтвердить, хотите ли вы удалить следующий файл.
Отлично! Теперь, сделав это, вы знаете свой путь к pyinstaller. Просто введите «Нет» и выйдите из процесса удаления, так как наша цель — просто получить путь. Теперь просто добавьте этот путь в переменную PATH.
Как изменить переменную PATH. Проверьте здесь
Это решение работает для Python 3.9
Сначала найдите папку pyinstaller.exe. Чтобы сделать это, вы можете попробовать этот трюк: (не нажимайте «y», просто посмотрите на приведенную выше копию пути, который вы ищете)
Прежде чем что-либо вводить, вам будет показан путь к файлу pyinstaller.exe. После этого скопируйте местоположение и запустите эту команду на терминале: (это пример)
Скопируйте путь к папке вашего скрипта C:\Users\имя пользователя\AppData\Local\Programs\Python\Python36-32\Scripts и вставьте его в путь: переменные среды> системные переменные> и сохраните его. Затем перезагрузите компьютер и попробуйте запустить pyinsatller из любого подходящего места.
Точно такая же проблема:
- Найдите папку Python и перейдите в папку Python\Python38\Lib\site-packages
- Оттуда удалите модуль Pyinstaller и папку dis.info Pyinstaller
- Переустановите Pyinstaller с помощью pip install pyinstaller
Перейдите к пути "C:\Users\Username\anaconda3\Scripts", скопируйте "pyinstaller.exe" и вставьте его в каталог, где вы хотите использовать pyinstaller, у меня это сработало
- Откройте команду cmd по этому пути: ctrl+r, напишите «cmd» в поле
- Удалить pyinstaller: pip удалить pyinstaller
- Установите его снова: pip install pyinstaller
- Используйте pyinstaller, написав pyinstaller
Я нашел, как исправить эту ошибку:
Мы должны ввести этот код в cmd pip install pyinstaller, если он снова не работает, вы должны перейти C:/user/pc name/Appdata (папка Appdata скрыта)/python, теперь вы должны скопировать папку script и C: /program files/python39 и скопируйте пакет сайта в C:/program files/python39/lib
затем, если вы наберете pyinstaller в cmd, вы увидите, что он работает
Как ни странно, для меня изменение заглавных букв решило проблему. Я набрал python -m [имя сценария] [аргументы]. В [scriptname] я набрал PyInstaller вместо pyinstaller, и это действительно сработало. Я пробовал оба способа несколько раз.
если вы ничего не можете сделать или у вас меньше времени, вы можете сделать виртуальную среду и установить туда pyinstaller, а затем сгенерировать исполняемый файл
Введите в административной консоли: pip install pyinstaller
Если установка pyinstaller и создание переменных «путь» по-прежнему не работают, вы можете использовать этот обходной путь:
Найдите pyinstaller.exe в возможном каталоге python, например C:\Users\ "UserName" \AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\Scripts
Скопируйте его в каталог, где у вас есть файл .py, который вы хотите скомпилировать как .exe
Здравствуйте. При попытке создать файл .py как exe с помощью --onefile cmd сообщает, что pyinstaller не распознается как внутренняя/внешняя команда. Я предоставлю снимок экрана моей экологической вещи. Я установил python 3.9 в программные файлы / щелкнул параметр «Все пользователи» и установил его по пути. спасибо
Текст был успешно обновлен, но возникли следующие ошибки:
комментарий greenelation прокомментирован 28 февраля 2021 г.
У меня возникла та же проблема, и я искал решение этой проблемы в Интернете, но ничто не помогло мне решить эту проблему. Я просто не могу создать EXE-файл из созданных мной игр PyCharm.
TetrisKid48 прокомментировал 1 марта 2021 г. •
Я правильно установил pyinstaller с PyPi с помощью pip install pyinstaller , он сказал, что установил правильно, но я получаю ту же ошибку, когда пытаюсь использовать команду pyinstaller в командной строке. Пишет, что команда не распознана. Я пытался удалить его, переустановить и обновить, но это ничего не дало.
Редактировать: это, вероятно, потому, что я установил Python из магазина Windows, я посмотрю виртуальные среды
advalk прокомментировал 2 апреля 2021 г.
У меня такая же проблема. Я делаю сборщик токенов Discord.**help
**
Vichu2005g прокомментировал 19 апреля 2021 г.
Это было большой головной болью для меня..
Rshabh050803 прокомментировал 9 мая 2021 г.
Я установил pyisntaller с помощью pip.
установили для этого переменные env .
переустановил питон.
удалил pyinstaller, а затем переустановил его.
но я все еще получаю эту ошибку.
Vichu2005g прокомментировал 9 мая 2021 г. •
Ну, я наткнулся на это, поэтому я просто удалил python и переустановил его, но на этот раз в мастере я проверил «добавить python в путь» или что-то в этом роде (посмотрите на рисунок ниже), а также установил python в windows, а затем я установил pyinstaller, и, к моему удивлению, он работает! Просто переустановите и не забудьте добавить python в путь.
hungvo2010 прокомментировал 22 мая 2021 г.
Я могу использовать "python filename.py" везде на своем компьютере. Я думаю, что python сейчас находится в PATH.
прокомментировал bobbytreed 24 мая 2021 г.
Я не понимаю, почему это было закрыто. Несмотря на пренебрежительный комментарий выше, это должно быть так же просто, как
pip install pyinstaller
pyinstaller --version
Но это не так. pip устанавливает модуль в site-packages, и там нет pyinstaller.exe или любого другого исполняемого файла, который я вижу.
Будь то проблема с PATH или с PIP, я не вижу причин отмахиваться от проблемы, оскорбляя чей-то опыт управления пакетами.
rokm прокомментировал 24 мая 2021 г. •
Я не понимаю, почему это было закрыто. Несмотря на пренебрежительный комментарий выше, это должно быть так же просто, как
pip install pyinstaller
pyinstaller --version
, но это не так. pip устанавливает модуль в site-packages, и там нет pyinstaller.exe или любого другого исполняемого файла, который я вижу.Будь то проблема PATH или проблема PIP, я не вижу причин отклонять проблема с оскорблением по поводу чьего-то опыта управления пакетами.
Потому что это не имеет ничего общего с PyInstaller. Процедура установки PyInstaller выполняется с помощью стандартных инструментов установки Python, которые устанавливают сценарии точки входа пакета в каталог Scripts Python. Если по какой-либо причине у вас нет этого каталога в PATH, мы ничего не можем с этим поделать. И никакой другой пакет, имеющий сценарии точки входа, также не будет работать для вас (когда вы попытаетесь вызвать его сценарии точки входа).
Однако, когда вы устанавливаете пакет со сценариями точки входа, а каталог Scripts отсутствует в PATH , pip предупреждает вас об этом и предлагает добавить его в PATH . Так что, насколько я понимаю, это ваша вина, если вы проигнорируете это сообщение.
прокомментировал bwoodsend 24 мая 2021 г.
Это средство отслеживания ошибок для сообщений об ошибках в PyInstaller. Как говорит @rokm, это не ошибка и не имеет ничего общего с PyInstaller. Отсюда его закрытие.
Мы не даем вам ответа, потому что вы явно не готовы использовать PyInstaller.
- Стандартное представление командной строки о том, что местоположение исполняемого файла должно находиться в PATH, чтобы его можно было найти
- Стандартная упаковка, чтобы знать, что точки входа пакета находятся в папке python-env/Scripts.
- И стандартный Python, чтобы знать, что вы запускаете любой пакет Python с помощью python -m и могли бы просто использовать аргументы python -m PyInstaller здесь.
Учитывая, что вам не удалось узнать/обнаружить все 3 этих обходных пути самостоятельно, очевидно, что вам не хватает знаний/навыков диагностики для использования PyInstaller. Использование PyInstaller в качестве инструмента CLI требует хорошего понимания инструментов CLI (которых, как вы показали, у вас нет), хорошего понимания упаковки в Python (которых, как вы также ясно показали, у вас нет), и средства для решения ваших собственных проблем, а не спама для нас, разработчиков (которых вы продемонстрировали, что вам не хватает, просто находясь здесь).
комментарий greenelation прокомментирован 24 мая 2021 г.
@bwoodsend не могли бы вы указать нам, новичкам, правильное место для помощи в том, что вы можете сделать, чтобы решить эту проблему. Я искал везде в Интернете и не нашел никаких решений этой проблемы. Если бы вы могли предложить курс или какой-нибудь материал для чтения, который может помочь, это было бы здорово.
Проблема, которую я обнаружил, заключается в том, что существует несколько способов установки Python, и некоторые из них влияют (я предполагаю, я точно не знаю) на папку python-env или PATH. Так, например, если вы устанавливаете Python через Anaconda или Pycharm, все может вести себя иначе.
Если я создам успешную программу Python и хочу, чтобы она была исполняемым файлом, @bwoodsend, что бы вы порекомендовали мне исследовать или какие темы я должен лучше понять, чтобы остановить «pyinstaller», не распознаваемый как внутренняя/внешняя команда.
Я очень ценю вашу помощь, так как я безуспешно перепробовал до 20 решений, а также виртуальные и стандартные ПК. Ваша мудрость ценится. Спасибо
прокомментировал bwoodsend 26 мая 2021 г.
Когда вы устанавливаете pyinstaller, pip выдает предупреждение:
информация о том, что pyinstaller.exe отсутствует в PATH, и где именно его найти. Он исправляет это предупреждение, на которое вам следует обратить внимание.
Прокомментировал LootRisk 4 июня 2021 г.
@bwoodsend
Я тоже видел эту ошибку, однако скрипты добавляются в путь, и я все еще получаю эту ошибку. У меня есть SSD (где установлены мои PATH и Python) и HDD, где находится моя программа. Может ли это быть причиной проблемы? Я тоже не смог найти решение. Или, возможно, я не знаю, что эти вещи означают, что невероятно возможно.
прокомментировал rokm 5 июня 2021 г. •
однако скрипты добавляются в путь, и я все еще получаю эту ошибку.
Тогда вы установили pyinstaller где-то еще — возможно, в виртуальной среде (созданной с помощью pycharm)?
EDIT: или вы установили его, используя системную установку python 3.9 (в c:\program files\python39 ) вместо локального 32-битного python 3.7 (в c:\users\gamer\appdata\local\programs \питон\питон37-32 ). В этом случае для пользователя используется специальный каталог сценариев (потому что, будучи не администратором, вы не можете писать/устанавливать в c:\program files\python39\scripts ), и этого нет в PATH . Но, как было сказано ранее, pip предупредил вас об этом, когда вы установили pyinstaller через pip install .
Прокомментировал LootRisk 5 июня 2021 г.
@rokm не установил его в pycharm. Делал через CMD. Я админ и единственный профиль на этом компе. Вы хотите сказать, что если я удалю pyinstaller, а затем перейду к c:\users\gamer\appdata\local\programs\python\python37-32, запустите cmd, а затем установлю pyinstaller, он должен работать?
rokm прокомментировал 5 июня 2021 г.
Попробуйте удалить PyInstaller, затем установите его снова и внимательно прочитайте вывод pip .
joseph404249 прокомментировал 30 июня 2021 г.
Если у вас нет имени файла "Scripts" в вашем каталоге python, вы должны создать его. после создания файла, как на первом рисунке,
скопируйте путь "Scripts" и поместите его в "Environment Variables", шаги показаны на втором рисунке
и повторите попытку.
Aternos123456789 прокомментировал 13 июля 2021 г.
Какой py 3.7 вы используете (3.7.9, 3.7.3 и т. д.)
Vichu2005g прокомментировал 27 августа 2021 г.
Какой py 3.7 вы используете (3.7.9, 3.7.3 и т. д.)
В настоящее время я использую Python 3.9.5 и взял это изображение с веб-сайта, так что не обращайте на это внимания. Просто добавьте python в путь, и pyinstaller заработает.
фрагменты
(05 мая 2020 г., 01:03) jacovb13 Написал: «pyinstaller» не распознается как внутренняя или внешняя команда,
(05 мая 2020 г., 01:03) jacovb13 Написал: «pyinstaller» не распознается как внутренняя или внешняя команда,
Вы случайно не знаете, как это исправить? если нет, не беспокойтесь, вы помогли мне больше, чем кто-либо другой, так что еще раз спасибо!
фрагменты
Посмотрите запись для запуска в виртуальной среде.
Посмотрите сообщение для запуска в виртуальной среде.
Запуск от имени администратора не помог. Что касается кода в посте, я помещаю его в скрипт Python и запускаю или помещаю в командную строку? еще раз спасибо!
попробуйте запустить установку на pip3.
При первом изучении python на raspberian я следовал руководству по установке python2. Это перекрывается с python3. Я быстро понял, что устанавливал на экземпляр python2 с помощью «pip».
В результате мне пришлось добавить это в первую строку всех моих скриптов (чтобы принудительно использовать python3 вместо python2).
Я рекомендую использовать установку PIP3
Повторите тестирование и сообщите мне о результатах. -ТониТех
фрагменты
@tonytech, у него работает часть с pip, это Pyinstaller, с которым у него проблемы.
pip3 используется в Linux, а не в Windows, как он использует.
(05 мая 2020 г., 02:29) jacovb13 Написал: Что касается кода в посте, мне нужно поместить его в скрипт Python и запустить его, или я должен поместить его в командную строку? еще раз спасибо!
Все делается из командной строки (cmd) или cmder, как я использую.
Вы запускаете cmd и делаете именно то, что я публикую.
Читайте также: