Suoritettavien tiedostojen luominen Python-skripteistä py2exe

Johdanto

Python-skriptien suorittaminen vaatii paljon edellytyksiä, kuten Pythonin asentamista, moduulien runsasta asentamista, komentorivin käyttöä jne. .exe – tiedoston suorittaminen on hyvin yksinkertaista.

jos haluat luoda yksinkertaisen sovelluksen ja jakaa sen useille käyttäjille, sen kirjoittaminen lyhyeksi Python-skriptiksi ei ole vaikeaa, mutta oletetaan, että käyttäjät osaavat käyttää komentosarjaa ja että Python on jo asennettu koneelleen.

tämänkaltaiset esimerkit osoittavat, että on olemassa pätevä syy muuttaa .py ohjelmia vastaaviksi .exe ohjelmiksi Windowsissa. .exe tulee sanoista ”Executable File”, joka tunnetaan myös Binäärinä.

suosituin tapa tähän on py2exe – moduulin käyttäminen. Tässä artikkelissa käymme nopeasti läpi py2exe perusasiat ja vianmääritykset. Voit seurata mukana, mitään edistynyttä Python-tietoa ei tarvita, mutta sinun täytyy käyttää Windowsia.

tulkatun kielikoodin muuntaminen suoritettavaksi tiedostoksi on käytäntö, jota yleisesti kutsutaan jäädyttämiseksi.

Py2exen asentaminen

py2exe moduulin käyttöön on tarpeen. Tehdään niin pip:

$ pip install py2exe

muunnetaan Python-Skriptiksi .exe

kirjoitetaan ensin a-ohjelma, joka tulostaa konsolille tekstiä:

import mathprint("Hannibal ante Portas")print(factorial(4))

ajetaan seuraavat komennot Windowsin komentoriviltä hakemiston tekemiseksi (exampDir), siirretään jo kirjoittamamme koodi mainittuun hakemistoon ja lopuksi suoritetaan se:

$ mkdir exampDir$ move example.py exampDir$ cd exampDir$ py example.py

tämän pitäisi tulostua:

Hannibal ante Portas24

testaa skriptit aina ennen kuin muutat ne suoritettaviksi varmistaaksesi, että jos on virhe, se ei johdu lähdekoodista.

Setup and Configuration

tee samaan kansioon toinen setup.py – niminen tiedosto. Tässä säilytämme asetustiedot siitä, miten haluamme koota ohjelmamme. Laitamme siihen pari riviä koodia toistaiseksi.:

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

jos kyseessä olisi graafisella käyttöliittymällä varustettu sovellus, korvaisimme console windows näin:

setup(windows=)

avaa nyt komentorivi järjestelmänvalvojana ja siirry juuri mainittuun hakemistoon ja suorita setup.py – tiedosto:

$ cd exampDir$ python setup.py py2exerunning py2exe*** searching for required modules ****** parsing results ***...

dist-kansio

jos kaikki on tehty oikein, tästä tulee tuottaa alihakemisto dist. Sen sisällä on ohjelmasta riippuen muutama eri tiedosto, joista yhden pitäisi olla example.exe. Voit suorittaa sen konsolin ajosta:

$ example

ja sinua tervehtii meidän Latinalainen lainaus, jota seuraa arvo 4!:

Hannibal ante Portas24

tai, voit kaksoisnapsauttaa sitä ja se toimii konsolissa.

jos haluat niputtaa kaikki tiedostot, lisää bundle_files ja compressed ja aseta zipfile Ei mitään näin:

from distutils.core import setupimport py2exesetup( options = {'py2exe': {'bundle_files': 1, 'compressed': True}}, console = , zipfile = None,)

ja uudelleen ajaa komentoja luoda .exe-tiedosto.

nyt loppukäyttäjäsi voivat suorittaa skriptejäsi ilman paikallisiin koneisiinsa asennettuja tietoja tai edellytyksiä.

vianmääritys

virheet muunnettaessa .py tiedostoja .exe tiedostoiksi ovat yleisiä, joten listaamme joitakin yleisiä vikoja ja ratkaisuja.

miten korjata puuttuva DLL-s käytön jälkeen py2exe

yleinen ongelma py2exe puuttuu .dll – s.

DLL tulee sanoista ”dynamic-link library”, eivätkä he ole siellä vain tekemässä bugeja, lupaavat. DLL sisältää koodia, dataa ja resursseja, joita ohjelmamme saattaa tarvita suorituksen aikana.

ajettuasi .exe, jos saat järjestelmävirheen, joka kertoo jotain:

The program can't start because something.dll is missing from your computer. Try reinstalling the program to fix this problem. 

tai komentorivi sanoo::

ImportError: (DLL load failed: The specified module could not be found.)

ratkaisu on löytää puuttuva .dll ja ohittaa se dist-kansioosi. On kaksi tapaa tehdä tämä.

  1. Etsi tiedosto tietokoneeltasi ja kopioi se. Tämä toimii suurimman osan ajasta.
  2. Etsi kadonnut .dll netistä ja lataa se. Yritä olla lataamatta sitä joltain hämärältä sivustolta.

Kuinka luoda 32/64-bittisiä suoritustiedostoja py2exen avulla?

tehdäksesi 64-bittisen suoritustiedoston, asenna laitteellesi 64-bittinen Python. Sama koskee 32-bittistä versiota.

miten py2exeä käytetään Linuxissa tai Macissa

py2exe ei tue Linuxissa tai Macissa, koska sen tarkoituksena on luoda .exe tiedostot, joka on Windows-ainutlaatuinen muoto. Voit ladata Windows-virtuaalikoneen sekä Macissa että Linuxissa, käyttää viiniä tai käyttää eri työkalua, kuten Pyinstalleria Linuxissa tai py2app Macissa.

Conclusion

jotta Python-projekteja olisi helpompi ajaa Windows-laitteilla, on luotava suoritettava tiedosto. Voimme käyttää monia erilaisia työkaluja, kuten Pyinstaller, auto-py-to-exe, cx_Freeze, ja py2exe.

binääritiedostot voivat käyttää DLL-s: ää, joten muista sisällyttää ne projektiisi.

Vastaa

Sähköpostiosoitettasi ei julkaista.

More: