wprowadzenie
wykonywanie skryptów Pythona wymaga wielu warunków wstępnych, takich jak zainstalowanie Pythona, zainstalowanie mnóstwa modułów, użycie wiersza poleceń itp. wykonanie pliku .exe
jest bardzo proste.
Jeśli chcesz stworzyć prostą aplikację i rozpowszechnić ją wśród wielu użytkowników, napisanie jej jako krótkiego skryptu Pythona nie jest trudne, ale zakłada, że użytkownicy wiedzą, jak uruchomić skrypt i mają Pythona już zainstalowanego na swojej maszynie.,
przykłady takie jak ten pokazują, że istnieje ważny powód, aby przekonwertować .py
programy na równoważne .exe
programy w systemie Windows. .exe
oznacza „plik wykonywalny”, który jest również znany jako plik binarny.
najpopularniejszym sposobem osiągnięcia tego celu jest użycie modułu py2exe
. W tym artykule szybko przejdziemy do podstaw py2exe
i rozwiążemy kilka typowych problemów. Aby podążać dalej, nie jest potrzebna zaawansowana wiedza Pythona, jednak będziesz musiał korzystać z systemu Windows.,
Konwersja zinterpretowanego kodu języka do pliku wykonywalnego jest praktyką powszechnie nazywaną zamrożeniem.
instalacja py2exe
aby użyć modułupy2exe
, musimy go zainstalować. Zróbmy to za pomocą pip
:
$ pip install py2exe
konwertując skrypt Pythona na .,exe
najpierw napiszmy program, który wydrukuje tekst na konsoli:
import mathprint("Hannibal ante Portas")print(factorial(4))
uruchomimy następujące polecenia w wierszu poleceń systemu Windows, aby utworzyć katalog (exampDir
), przeniesiemy kod, który już napisaliśmy do tego katalogu, i na koniec wykonamy go:
$ mkdir exampDir$ move example.py exampDir$ cd exampDir$ py example.py
powinno to wynikać:
Hannibal ante Portas24
zawsze testuj Skrypty przed przekształceniem ich w pliki wykonywalne, aby upewnić się, że jeśli wystąpi błąd, nie jest on spowodowany przez kod źródłowy.,
Konfiguracja i konfiguracja
Utwórz inny plik o nazwiesetup.py
w tym samym folderze. Tutaj będziemy przechowywać szczegóły konfiguracji jak chcemy skompilować nasz program., Na razie umieścimy w nim kilka linii kodu:
from distutils.core import setup # Need this to handle modulesimport py2exe import math # We have to import all modules used in our programsetup(console=) # Calls setup function to indicate that we're dealing with a single console application
gdybyśmy mieli do czynienia z aplikacją z GRAFICZNYM interfejsem użytkownika, zamienilibyśmy console
na windows
w ten sposób:
setup(windows=)
teraz otwórz wiersz polecenia jako administrator i przejdź do katalogu, o którym właśnie wspomnieliśmy i uruchom plik setup.py
plik:
$ cd exampDir$ python setup.py py2exerunning py2exe*** searching for required modules ****** parsing results ***...
folder dist
jeśli wszystko jest zrobione poprawnie, powinno to wytworzyć podkatalog o nazwie dist
., W środku będzie kilka różnych plików w zależności od programu, a jednym z nich powinien być example.exe
. Aby go uruchomić z konsoli Uruchom:
$ example
i zostaniesz powitany przez nasz łaciński cytat, a następnie wartość 4!:
Hannibal ante Portas24
lub, można go dwukrotnie kliknąć i będzie działać w konsoli.
Jeśli chcesz spakować wszystkie pliki, dodaj bundle_files
I compressed
I ustaw zipfile
do None w ten sposób:
i ponownie uruchom polecenia, aby wygenerować .plik exe.,
teraz użytkownicy końcowi mogą uruchamiać Twoje Skrypty bez żadnej wiedzy i warunków wstępnych zainstalowanych na swoich lokalnych maszynach.
Rozwiązywanie problemów
błędy podczas konwersji plików.py
na pliki.exe
są powszechne, więc wymienimy kilka typowych błędów i rozwiązań.
jak naprawić brakujące biblioteki DLL po użyciu py2exe
powszechny problem z py2exe jest brak .dll
-s.
DLL oznacza „dynamic-link library”, i nie są tam tylko po to, aby błędy, obietnica., Biblioteki DLL zawierają kod, Dane i zasoby, które nasz program może potrzebować podczas wykonywania.
Po uruchomieniu .exe
, Jeśli pojawi się błąd systemowy, który mówi coś w stylu:
The program can't start because something.dll is missing from your computer. Try reinstalling the program to fix this problem.
lub wiersz poleceń mówi:
ImportError: (DLL load failed: The specified module could not be found.)
rozwiązaniem jest znalezienie brakującego .dll
i wklejenie go do folderu dist. Można to zrobić na dwa sposoby.
- Przeszukaj komputer w poszukiwaniu pliku, a następnie skopiuj go. To będzie działać przez większość czasu.,
- Znajdź brakujące
.dll
online i pobierz je. Staraj się nie pobierać go z jakiejś podejrzanej strony.
jak wygenerować 32/64-bitowe pliki wykonywalne za pomocą py2exe?
aby utworzyć 64-bitowy program wykonywalny, zainstaluj 64-bitowy Python na swoim urządzeniu. To samo dotyczy wersji 32-bitowej.
Jak używać py2exe na Linuksie lub Macu
py2exe
nie obsługuje na Linuksie lub Macu, ponieważ ma na celu tworzenie .pliki exe, który jest unikalnym formatem Windows., Możesz pobrać maszynę wirtualną z systemem Windows na Macu i Linuksie, użyć Wine lub użyć innego narzędzia, takiego jak Pyinstaller na Linuksie lub py2app na Macu.
podsumowanie
aby ułatwić uruchamianie projektów Pythona na urządzeniach z systemem Windows, musimy wygenerować plik wykonywalny. Możemy używać wielu różnych narzędzi, takich jak Pyinstaller, auto-py-to-exe, cx_Freeze i py2exe.
pliki binarne mogą używać dll-s, więc upewnij się, że dołączasz je do swojego projektu.