Mi ci è voluto un po 'di sforzo per cercare risposte qui, sul web e nella documentazione di Python e testare da solo, per far finalmente funzionare i miei script Python senza problemi sui miei computer Windows (WinXP e Win7). Quindi, ho appena scritto un blog su di esso e lo sto incollando di seguito nel caso in cui sia utile per gli altri. Mi dispiace è lungo e sentiti libero di migliorarlo; Non sono un esperto.
[ AGGIORNAMENTO : Python 3.3 ora include Python Launcher per Windows, che consente di digitare py (anziché python) per richiamare l'interprete predefinito, oppure py -2, py -3, py -2.7, ecc. Supporta anche le righe shebang , consentendo allo script stesso di specificare. Per le versioni precedenti alla 3.3, il programma di avvio è disponibile come download separato.
http://docs.python.org/3/whatsnew/3.3.html
]
Esecuzione degli script Python comodamente su Windows
Forse stai creando i tuoi script Python o forse qualcuno ti ha dato uno per fare qualcosa con i tuoi file di dati. Supponi di aver acquisito uno script Python e di averlo salvato in "D: \ my script \ ApplyRE.py". Vuoi eseguirlo comodamente facendo doppio clic su di esso o digitandolo nella riga di comando da qualsiasi posizione, con l'opzione di passargli i parametri in questo modo (-o significa "sovrascrivere il file di output se esiste già"):
ApplyRE infile.txt outfile.txt -o
Supponi di avere anche un file di dati, "C: \ some files \ some lexicon.txt". L'opzione più semplice è spostare il file o lo script in modo che siano nella stessa posizione, ma ciò può diventare disordinato, quindi supponiamo che rimarranno separati.
Assicurarsi che Windows riesca a trovare l'interprete Python
Dopo aver installato Python, verifica che la digitazione di python in un prompt dei comandi funzioni (e quindi digita exit () per uscire dall'interprete Python).
C:\>python
Python 3.2 (r32:88445, Feb 20 2011, 21:29:02) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()
C:\>
Se questo non funziona, dovrai aggiungere qualcosa come "; C: \ Python32" (senza virgolette) alla variabile d'ambiente PATH. Vedi PATHEXT di seguito per le istruzioni.
Associare Python a .py e .pyc
Verifica che il doppio clic su ApplyRE.py lo esegua. (Dovrebbe anche avere un logo Python come icona ed essere etichettato "File Python", a proposito.) Se ciò non è già fatto, fai clic con il tasto destro del mouse su un file .py, scegli Apri con, Scegli programma e controlla "Usa sempre ..." Questa associazione migliora la praticità ma non è strettamente necessaria: puoi specificare "python" ogni volta che vuoi eseguire uno script, come questo:
D:\my scripts>python ApplyRE.py lexicon-sample.txt -o
Running... Done.
Ecco una variante molto specifica, che è facoltativa a meno che non sia necessario specificare una versione diversa dell'interprete.
D:\my scripts>c:\python32\python ApplyRE.py lexicon-sample.txt -o
Running... Done.
Ma è un dolore. Fortunatamente, una volta installato Python, nel PERCORSO e associato a .py, quindi fare doppio clic su un file .py o digitarlo direttamente come comando dovrebbe funzionare correttamente. Qui, sembra che eseguiamo direttamente lo script: è bello e semplice eseguirlo su un file di esempio che si trova nella cartella "i miei script" insieme allo script.
D:\my scripts>ApplyRE.py lexicon-sample.txt -o
Running... Done.
Omettere l'estensione .py (modifica PATHEXT)
Per ridurre ulteriormente la digitazione, puoi dire a Windows che i file .py (e forse i file .pyc) sono eseguibili. Per fare ciò, fai clic con il pulsante destro del mouse su Computer e scegli Proprietà, Avanzate, Variabili d'ambiente, Variabili di sistema. Aggiungi "; .PY; .PYC" (senza virgolette) alla variabile PATHEXT esistente, oppure creala se sei certo che non esiste ancora. Chiudi e riapri il prompt dei comandi. Ora dovresti essere in grado di omettere il file .py (FYI, in tal caso si eseguirà invece ApplyRE.exe o ApplyRE.bat, se esistesse).
D:\my scripts>ApplyRE lexicon-sample.txt -o
Running... Done.
Aggiunta di script al PERCORSO di sistema
Se utilizzerai spesso i tuoi script dal prompt dei comandi (è meno importante farlo utilizzando i file BAT), ti consigliamo di aggiungere la cartella dei tuoi script al PERCORSO di sistema. (Accanto a PATHEXT dovresti vedere una variabile PATH; append "; D: \ my script", senza virgolette.) In questo modo puoi eseguire uno script da qualche altra posizione contro i file nella posizione corrente, come questo:
C:\some files>ApplyRE "some lexicon.txt" "some lexicon OUT.txt" -o
Running... Done.
Successo! È praticamente tutto ciò che devi fare per semplificare la riga di comando.
Esecuzione diretta senza modificare il PERCORSO
Se sei un dattilografo veloce o non ti dispiace creare un file batch per ogni situazione, puoi specificare percorsi completi (per lo script o per i parametri) invece di modificare il PERCORSO.
C:\some files>"d:\my scripts\ApplyRE.py" "some lexicon.txt" "some lexicon OUT.txt" -o
Running... Done.
C:\some files>d:
D:\>cd "my scripts"
D:\my scripts>ApplyRE.py "c:\some files\some lexicon.txt" "c:\some files\some lexicon OUT.txt" -o
Running... Done.
Creazione di collegamenti o file batch
Se .py è associato a un Python installato, puoi semplicemente fare doppio clic su ApplyRE.py per eseguirlo, ma la console potrebbe apparire e scomparire troppo rapidamente per leggere il suo output (o errore!). E per passare i parametri, devi prima effettuare una delle seguenti operazioni. (a) Fare clic con il tasto destro del mouse e creare un collegamento. Fare clic con il tasto destro del collegamento per modificare le proprietà e aggiungere parametri a Target. (b) Creare un file batch: un file di testo semplice con un nome distinto come ApplyRErun.bat. Questa opzione è probabilmente migliore perché puoi chiederle di mettere in pausa in modo da poter vedere l'output. Ecco il contenuto di un file BAT di esempio, scritto per essere localizzato ed eseguito da c: \ alcuni file.
python "d:\my scripts\ApplyRE.py" "some lexicon.txt" "some lexicon OUT.txt" -o
pause
Avanzato: aggiunta a PYTHONPATH
Questo di solito non è necessario, ma un'altra variabile d'ambiente che può essere rilevante è PYTHONPATH. Se dovessimo aggiungere d: \ my script a quella variabile, allora altri script Python in altre posizioni potrebbero farne uso tramite le istruzioni di importazione.