Компилируем код Python в файл exe

Компилируем код Python в файл exe

Код, написанный на Python, позволяет решать много прикладных задач: автоматизация отчетности, алгоритмы поиска, анализа и пр. Однако не у всех потенциальных пользователей может быть установлен сам Python и тем более не все являются экспертами в программировании. Выручить может программа, которая будет отрабатывать написанный вами код без установки библиотек Python и необходимой оболочки. Одним из таких решений может быть компиляция кода Python а файл exe. Дальше простым языком мы постараемся объяснить, как его скомпилировать и какие есть нюансы.

Для начала Вам необходимо скачать компилятор pyinstaller, для чего вам понадобится команда:

pip install pyinstaller

Далее ваш код в формате. py необходимо разместить в системную папку Scripts.

Путь к этой папке обычно выглядит так:

Компилируем код Python в файл exe

Если Вы инсталлировали Python в другое место, соответственно ищите папку там.

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

Компилируем код Python в файл exe

У Вас сразу будет указан верный путь к файлу:

Компилируем код Python в файл exe

В продолжение строки с директорией файла необходимо набрать команду: pyinstaller Report.py —onefile

Компилируем код Python в файл exe

Где Report.py – это имя вашего файла, — onefile – означает, что программа будет скомпилирована в единый файл.

Нажимаем Enter. Pyinstaller приступает к сборке программы.

В зависимости от размера кода и количества, используемых в нем библиотек, время сборки программы может занять 5-15 мин. Успешностью завершения будет являться следующее сообщение:

Компилируем код Python в файл exe

Готовый файл находим в папке dist.

Данный метод компиляции не оптимизирует включение только необходимых библиотек, поэтому нужно быть готовым к тому, что его размер будет занимать достаточно объема. В нашем случае код из 120 строк с библиотекой Pandas и Datetime собран в программу весом почти 220 Mb. Теперь данным файлом может пользоваться любой сотрудник.

Хотелось бы обратить внимание на следующие нюансы: если вы компилируете файл на 64 битной OS Windows 10, то он не запустится на 32 битной OS Windows 7.

Если же файл будет скомпилирован на 32 битной OS Windows 7, то его можно будет запустить как на 32 битных, так и на 64 битных OS Windows 7/10.

44
25 комментариев

Странно такое тут видеть, но сохранил, задача может стать актуальной

1
Ответить
Автор

Юрий, спасибо! С радостью будем делиться полезными лайфхаками и дальше:)

1
Ответить

Уж сколько раз твердили миру.... А воз и ныне там. Не компилируется Python в exe. Начините, наконец, думать и учить матчасть.

Ответить

А если руки чешутся?

Ответить

Откомпилируйте кто-нибудь unoconv
Это универсальный конвертор офисных документов через командную строку

Ответить

pyinstaller: error: unrecognized arguments: -onefile 
что делать?

Ответить

--onefile 

Ответить