Passi finali del wrapping di uno script Python in un programma

3

Ho finito di creare uno script Python contenente otto funzioni che scaricano file, li estrae, manipolano e analizzano i loro dati e quindi producono grafici ed esportali in file PNG.

I file di input si trovano in un sito FTP remoto, ma alcuni file intermedi e anche i file PNG di output vengono salvati localmente nel file system del computer. Ci sono 100 linee di codice in totale.

Attualmente, per prima cosa lo eseguo in modo che la console Python ottenga le definizioni delle funzioni, quindi chiamo le otto funzioni una alla volta per ottenere i risultati.

Ad esempio, chiamo la funzione di download per scaricare i file di archivio, quindi chiamo la funzione che estrae quei file e così via. Sono sicuro che questo non è il modo migliore di usare uno script Python, quindi ho pensato di chiedere qui se qualcuno potesse fornire i passaggi per ottenere il massimo dal mio script in termini di utilizzo. Sospetto che un buon metodo sarebbe quello di trasformare lo script in uno o più moduli, ma non ne sono affatto sicuro.

Se possibile, fornisci i dettagli per due possibili scenari:

  1. Lo script è usato solo da me e ho Python installato e so come usarlo
  2. Lo script è utilizzato da altri utenti che non hanno installato Python
posta multigoodverse 24.07.2015 - 19:20
fonte

2 risposte

3

Avere le 8 chiamate di funzione racchiuse in

if __name__ == '__main__':

Quindi puoi chiamare lo script eseguendo

python NAME_OF_YOUR_SCRIPT.py

Se devi passare qualsiasi variabile quando lo usi, usa il modulo argparse

    
risposta data 24.07.2015 - 20:23
fonte
2

Suggerirei di implementare i parametri della riga di comando e la guida della riga di comando usando argparse. Le diverse funzioni potrebbero quindi essere selezionate mediante le opzioni della riga di comando. Se altri senza python installato devono usare il tuo programma, allora lo impacchetterei come eseguibile usando pyinstaller.

Pyinstaller può essere utilizzato per creare 3 eseguibili possilbe: onefile, onedir o console. Il tipo di console non ha bisogno di un gui ed è un exe stand alone. Il onefile è un exe stand-alone e onedir è una tipica installazione con i file dei componenti richiesti come immagini e DLL e tali in una cartella.

    
risposta data 24.07.2015 - 20:25
fonte

Leggi altre domande sui tag