Come posso convertire la mia app Python in .exe
? Ho creato un programma con tkinter
e mi chiedevo come renderlo possibile agli altri. Io uso Python 3.3. Ho cercato un po 'ma non ho trovato nulla.Come faccio a compilare la mia app Python 3 su un file .exe?
risposta
cx_Freeze esegue questa operazione ma crea una cartella con molte dipendenze. py2exe ora lo fa e, con l'opzione --bundle-files 0, crea solo un EXE, che è probabilmente la soluzione migliore per la tua domanda.
UPDATE: Dopo aver incontrato i moduli di terze parti che py2exe avuto difficoltà a "trovare", mi sono trasferito a pyinstaller come kotlet schabowy suggerisce di seguito. Entrambi dispongono di un'ampia documentazione e includono .exes che è possibile eseguire con i parametri della riga di comando, ma devo ancora compilare uno script che pyinstaller non è in grado di gestire senza eseguire il debug o il grattamento della testa.
Ecco una semplice funzione di convenienza che uso per costruire un .exe con i miei valori predefiniti dall'interprete (ovviamente un batch o simile sarebbe troppo fine):
import subprocess,os
def exe(pyfile,dest="",creator=r"C:\Python34\Scripts\pyinstaller.exe",ico=r"C:\my icons\favicon.ico",noconsole=False):
insert=""
if dest: insert+='--distpath ""'.format(dest)
else: insert+='--distpath "" '.format(os.path.split(pyfile)[0])
if ico: insert+=' --icon="{}" '.format(ico)
if noconsole: insert+=' --noconsole '
runstring='"{creator}" "{pyfile}" {insert} -F'.format(**locals())
subprocess.check_output(runstring)
Questo risponde "Cosa?", ma non "Come?" – CaffeineConnoisseur
ho trovato PyInstaller funzionare al meglio . Hai molte opzioni, ad esempio puoi mettere tutto in un file exe.
Mi piace usarlo insieme a Cython per la velocità.
Utilizzare Pyinstaller. Dopo averlo installato, apri il terminale nella directory in cui si trova il tuo progetto.
$ pyinstaller script1.py script2.py ...
(dove script1, SCRIPT2, ecc, sono tutti gli script utilizzati nel progetto.)Dopo comando è completato, cartella aperta
dist
e inserire la sottodirectory. Lì troverai un eseguibile.
Spero che sia d'aiuto.
- 1. android: come faccio a contrassegnare la mia app come debuggibile?
- 2. Come posso compilare perl6 file exe
- 3. Esistono librerie GUI per Python che consentono di compilare un file EXE (Windows) e APP (Mac)?
- 4. Come faccio a testare la mia app Express con moka?
- 5. Progetto Python 3 in exe?
- 6. Come faccio a compilare più file py come uno?
- 7. Come faccio a compilare un file .cpp solo nel file oggetto senza chiamare il linker
- 8. Come faccio a compilare un va_list
- 9. C++ Come compilare dll in un file .exe
- 10. Compilare PyPy to Exe
- 11. Compilare lo script R in un file .exe autonomo?
- 12. Come avviare la mia app meteo su un dispositivo Android?
- 13. Come faccio a sapere se la mia app è in esecuzione con Robolectric?
- 14. Come faccio a profilare la mia app - la voce di menu è disabilitata?
- 15. Python 3 Come faccio a 'dichiarare' una variabile `byte` vuota
- 16. Python statistiche: Come faccio a scrivere ad un (leggibile) file
- 17. Come faccio a sapere perché la mia app per Android richiede determinate autorizzazioni?
- 18. Come faccio a compilare in byte tutto nella mia directory .emacs.d?
- 19. Come faccio a cambiare la mia "legacy packaged app" in una "estensione"?
- 20. Come faccio a far scorrere la mia app oltre qualcosa coperto dalla tastiera
- 21. come faccio a eseguire il debug/breakpoint della mia app django usando pycharm?
- 22. per compilare file c con file .a
- 23. come faccio a cancellare/gc un oggetto in Actionscript 3?
- 24. Come faccio a usare la mia app gtk sul tema scuro?
- 25. Come faccio a leggere la chiave pubblica da un C# firmato exe
- 26. Come faccio a trovare la mia fonte SVN?
- 27. Compilare script in rubino in exe?
- 28. Come rendere la mia app rimasta su app a schermo intero
- 29. Leggere un file CSV usando Python 3
- 30. Compilazione del file .hta su .exe
sì, ma sono tutti per 2.7 e sotto, io uso 3.3 –
Ok, ma è ancora una domanda molto comune. La mia risposta è stata da una rapida ricerca su Google. –
Ho aggiunto il 3 al tuo titolo ma, sfortunatamente, sospetto che la tua domanda possa ancora essere chiusa. In bocca al lupo. –