Советы по программированию

Как скомпилировать Python код в .exe

Как скомпилировать Python код в .exe | немного теории

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

Хочется отметить, что для меня Python является одним из самых интересных, мощных языков программирования. С ним я познакомился примерно в 2016 году и только спустя год осознал всю его мощь и красоту.

Многие задаются вопросом, когда написали программу на Python: “А как его скомпилировать в .exe файл?”. Вопрос довольно сложный, для того, кто только открыл для себя этот язык и ещё не сталкивался с pip.

pip – система управления пакетами, которая используется для установки и управления программными пакетами, которые написаны на Python. Если кратко, то pip – это файловый менеджер языка Python.

pyinstaller – программа, которая собирает все зависимости и python-приложение в один пакет и превращает его в исполняемый файл для Windows, Linux, MacOS.

Как скомпилировать Python код в .exe | практикум

Давайте разберем, как скомпилировать Python код в .exe за минуту, с помощью Терминала(в Linux) или cmd(Windows).

Для начала, нам нужно установить pyinstaller с помощью pip. Пишем команду в командной строке:

pip install pyinstaller

Если вы используете Linux и у вас не установлен pip, то просто напишите команду:

apt-get install python-pip

На Windows, если вы не изменяли конфигурации установки Python, проблемы отсутствия pip у вас возникнуть не должно.

Вторым шагом будет переход в директорию с нашим проектом. Просто копируем путь и с помощью команды cd (наш путь) переходим в директорию, для Linux и Windows команда одинаковая.

Теперь давайте скомпилируем наш Python код в .exe, не будем тянуть.

Как скомпилировать Python код в .exe

Сделаем мы это с помощью установленного пакета pyinstaller.

Как скомпилировать Python код в .exe

Пишем команду:

pyinstaller -F -w -i( to set up icon on your .exe) main.py

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

  • -F – этот флаг отвечает за то, чтобы в созданной папке dist, в которой и будет храниться наш исполняемый файл не было очень много лишних файлов, модулей и т.п.
  • -w – этот флаг вам понадобится в том случае, если приложение использует tkinekt, оно блокирует создание консольного окна, если же ваше приложение консольное, вам этот флаг использовать не нужно.
  • -i – этот флаг отвечает за установку иконки на наш исполняемый файл, после флага нужно указать полный путь к иконке с указанием её имени. Например: D:\LayOut\icon.ico

Вот и всё, сегодня мы рассмотрели, как скомпилировать Python код в .exe, Если у вас остались какие-либо вопросы, пишите их в комментарии, с удовольствием отвечу.

Так же подписывайтесь на обновления сайта, тут будет ещё много интересного!

Удачи в жизни и до встречи!

Related Articles

24 Comments

    1. Не стану расписывать тирады, ведь на данное сообщение уже давно ответили за меня. Google:

      1. http://qaru.site/questions/59189/is-python-interpreted-or-compiled-or-both
      2. https://bunkerbook.ru/uroki-po-python/yavlyaetsya-li-python-skompilirovannym-ili-interpretirovannym/
      3. https://habr.com/ru/post/209812/
      4. https://sprosi.pro/questions/19173/yavlyaetsya-li-python-interpretirovannyim-ili-skompilirovannyim

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

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

      1. абсолютно верно
        можно скомпилировать даже php (для особых энтузиастов) и javascript
        язык – это лишь средства
        на пути к цели – все средства хороши

    1. Железо у тебя слабое, я лично сам тестировал эту библиотеку на разных пк…. Всё везде работает

      1. а у меня выдает ошибку “pyinstaller” не является внутренней или внешней
        командой, исполняемой программой или пакетным файлом.

  1. Что делать, если скомпилированные таким образом консольное приложение выдаёт ошибки при запуске на другом компьютере?

  2. Что делать если выдает ошибку: ValueError: script ‘C:\Users\я\Калькулятор1.0’ not found. уже 3 день пытаюсь разобраться с проблемой и понял, что нет папки со скриптами вместе питоном. пытался переустановить питон, все равно устанавливается без каких либо папок.

  3. Здравствуйте. По Вашим рекомендациям получаю тип файла AAP, а не EXE. в чем может быть проблема?

  4. Что делать если выдаёт ошибку “Non-UTF-8 code starting with ‘\xf0’ in file C:\(путь к файлу)\pyinstaller-script.py on line 1, but no encoding declared”
    уже смотрел pep, пытался всячески в первой строке указать кодировку, не понимаю как ещё исправить?

  5. Отлично!
    Спасибо, скомпелировал *.exe из фрейворка pygame без труда:
    pyinstaller -F -w scratch.py

  6. Windows 10, Python 3.8
    Хочу в программу включить *.jpeg
    Т.к. PIL на Python 3 не работает – использовал для этих целей библиотеку Pillow
    Так вот, не получается собрать исполняемый фаил с библиоекой Pillow при помощи pyinstaller.

    Вопрос. Как собрать исполняемый фаил в котором будет jpeg?

    1. Добрый день, нашли решение этой проблемы?
      Столкнулся с такой же, никак не могу разобраться

  7. Добрый день! Очень полезная статья, но вы рассмотрели только 2 операционные системы. На macOS скомпилировать код в python не представляется возможным?

  8. Спасибо. Консольные приложения создаются и работают. А вот с графическим интерфейсом (исп модуль pygame) .exe создается, но не запускается.((((((

  9. пишет, мол “pyinstaller” не является внутренней или внешней
    командой, исполняемой программой или пакетным файлом.

  10. Здравствуйте, у меня следующая проблема:
    при вводе “-F 1234.py”
    мне выдаёт “SyntaxError: Non-UTF-8 code starting with ‘\xe2’ in file C:\Users\Властелин\AppData\Local\Programs\Python\Python39\Scripts\pyinstaller-script.py on line 1, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details”

    нужна очень подробная инструкция что делать( всё что я нашёл в сети мне не помогло/ я не смог понять как это применить

    Код я писал в Sublime Text 3, версия python – последняя

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Back to top button
Adblock
detector
. 213 запросов. 0,166 секунд.