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ć .pyprogramy 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.

  1. Przeszukaj komputer w poszukiwaniu pliku, a następnie skopiuj go. To będzie działać przez większość czasu.,
  2. 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.