Forum >> Principianti >> Python compilato

Pagina: 1

Salve, sono nuovo sul forum e mi é nuovo anche il mondo della programmazione, ma ho deciso di cominciare ad imparare il python 3. La mia domanda potrebbe essere molto banale, ma su internet non ho trovato la risposta. Il python é un linguaggio interpretato, quindi questo presuppone che ci sia qualcosa che lo interpreti e che questo qualcosa sia installato sul computer. Tuttavia, mi chiedo, é possibile convertire gli script scritti in python in linguaggio macchina come accade per i programmi compilati, in maniera tale da eseguirlo su ogni PC? Per esempio, so che GIMP é stato scritto usando anche il python, ma perché GIMP posso installarlo ed eseguirlo senza che sia necessario installare l'interprete python sul pc? Grazie in anticipo
Sì è possibile, ed è una delle due o tre domande più comuni dei principianti e puoi trovare centinaia di risposte googlando per "compile python script" o qualcosa del genere. Ci sono vari modi per embeddare l'interprete python dentro un "programma auto-contenuto", tra cui tool semi-automatici (pyinstaller etc etc etc) di varia natura.


Ovviamente a questo punto bisogna aggiungere il disclaimer standard: anche se si può avere l'impressione che basta seguire un "tutorial" di cinque minuti su youtube, in realtà è un problema di pacchettizzazione e distribuzione del codice, e in quanto tale è un Problema Difficile, almeno nelle sue forme generali. Nelle situazioni facili è facile usare questi tool. Ma è facilissimo incastrarsi in situazioni spinose, e se cerchi nei forum troverai dozzine di messaggi "aiuto cx_freeze non mi funzia" o cose del genere.


Il consiglio è, se vuoi imparare a programmare, di lasciar perdere questo argomento per adesso, e farti bastare la risposta generica "sì è possibile farlo". Tra un annetto o giu di lì, quando avrai consolidato la tua esperienza con python e la programmazione in generale, potrai tornare sul problema e ti sarà tutto più chiaro. La cosa buffa è che, per tutta una serie di ragioni, più si va avanti ad approfondire la programmazione con python e meno si sente l'esigenza di distribuire codice "compilato". Ma è pur vero che qualche scenario in cui invece conviene farlo esiste.


(oh, a proposito: Gimp ha un'intera installazione di python embeddata, libreria standard compresa. Se esamini la directory di Gimp la trovi facilmente. E' un modo un po' brutale, ma suppongo che per la loro esigenza (in-app scripting) abbia senso)



--- Ultima modifica di RicPol in data 2018-11-18 21:33:11 ---
Ciao RicPol, grazie per la risposta.
In verità, avevo già letto di soluzioni come pyinstaller e cx_freeze e avevo notato che fosse una domanda molto gettonata quella di convertire script python in eseguibili. Quello che non mi tornava era:

- quando lo script diventa un eseguibile (.exe) vuol dire che ci clicco sopra e si esegue, ma si esegue solo previa installazione delle librerie python sul mio pc, oppure lo script si compila in maniera da essere eseguibile a prescindere? Ora mi è chiara la risposta.


Pagina: 1



Esegui il login per scrivere una risposta.