Ich habe einige Anstrengungen unternommen, um hier, im Internet und in der Python-Dokumentation nach Antworten zu suchen und selbst zu testen, damit meine Python-Skripte endlich reibungslos auf meinen Windows-Computern (WinXP und Win7) funktionieren. Also habe ich gerade darüber gebloggt und füge das unten ein, falls es für andere nützlich ist. Tut mir leid, es ist lang und Sie können es gerne verbessern. Ich bin kein Experte.
[ UPDATE : Python 3.3 enthält jetzt den Python Launcher für Windows, mit dem Sie py (anstelle von Python) eingeben können, um den Standardinterpreter oder py -2, py -3, py -2.7 usw. aufzurufen. Außerdem werden Shebang-Zeilen unterstützt Dadurch kann das Skript selbst angeben. Für Versionen vor 3.3 steht der Launcher als separater Download zur Verfügung.
http://docs.python.org/3/whatsnew/3.3.html
]
Ausführen von Python-Skripten bequem unter Windows
Vielleicht erstellen Sie Ihre eigenen Python-Skripte, oder jemand hat Ihnen eines gegeben, um etwas mit Ihren Datendateien zu tun. Angenommen, Sie haben ein Python-Skript erworben und es unter "D: \ my scripts \ ApplyRE.py" gespeichert. Sie möchten es bequem ausführen, indem Sie entweder darauf doppelklicken oder es von einem beliebigen Ort aus in die Befehlszeile eingeben. Dabei können Sie Parameter wie folgt übergeben (-o bedeutet "Überschreiben Sie die Ausgabedatei, falls sie bereits vorhanden ist"):
ApplyRE infile.txt outfile.txt -o
Angenommen, Sie haben auch eine Datendatei mit dem Titel "C: \ einige Dateien \ einige lexicon.txt". Die einfachste Möglichkeit besteht darin, die Datei oder das Skript so zu verschieben, dass sie sich am selben Speicherort befinden. Dies kann jedoch zu Problemen führen. Nehmen wir also an, dass sie getrennt bleiben.
Stellen Sie sicher, dass Windows den Python-Interpreter findet
Stellen Sie nach der Installation von Python sicher, dass die Eingabe von Python in eine Eingabeaufforderung funktioniert (und geben Sie dann exit () ein, um den Python-Interpreter wieder zu verlassen).
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:\>
Wenn dies nicht funktioniert, müssen Sie etwas wie "; C: \ Python32" (ohne Anführungszeichen) an die Umgebungsvariable PATH anhängen. Anweisungen finden Sie unter PATHEXT unten.
Python mit .py und .pyc verknüpfen
Stellen Sie sicher, dass ein Doppelklick auf ApplyRE.py ausgeführt wird. (Es sollte auch ein Python-Logo als Symbol haben und übrigens als "Python-Datei" bezeichnet sein.) Wenn dies noch nicht geschehen ist, klicken Sie mit der rechten Maustaste auf eine .py-Datei, wählen Sie "Öffnen mit", "Programm auswählen" und aktivieren Sie "Immer verwenden ..." Diese Zuordnung verbessert die Benutzerfreundlichkeit, ist jedoch nicht unbedingt erforderlich. Sie können "Python" jedes Mal angeben, wenn Sie ein Skript ausführen möchten, wie folgt:
D:\my scripts>python ApplyRE.py lexicon-sample.txt -o
Running... Done.
Hier ist eine sehr spezifische Variante, die optional ist, es sei denn, Sie müssen eine andere Version des Interpreters angeben.
D:\my scripts>c:\python32\python ApplyRE.py lexicon-sample.txt -o
Running... Done.
Aber das ist ein Schmerz. Glücklicherweise sollte nach der Installation von Python im PATH und der Verknüpfung mit .py ein Doppelklick auf eine .py-Datei oder die direkte Eingabe als Befehl funktionieren. Hier scheinen wir das Skript direkt auszuführen - es ist schön und einfach, es in einer Beispieldatei auszuführen, die sich zusammen mit dem Skript im Ordner "Meine Skripte" befindet.
D:\my scripts>ApplyRE.py lexicon-sample.txt -o
Running... Done.
Auslassen der Erweiterung .py (Bearbeiten von PATHEXT)
Um die Eingabe weiter zu reduzieren, können Sie Windows mitteilen, dass .py (und möglicherweise .pyc-Dateien) ausführbar sind. Klicken Sie dazu mit der rechten Maustaste auf Computer und wählen Sie Eigenschaften, Erweitert, Umgebungsvariablen, Systemvariablen. Fügen Sie "; .PY; .PYC" (ohne Anführungszeichen) an die vorhandene PATHEXT-Variable an, oder erstellen Sie sie, wenn Sie sicher sind, dass sie noch nicht vorhanden ist. Schließen Sie die Eingabeaufforderung und öffnen Sie sie erneut. Sie sollten jetzt in der Lage sein, die .py wegzulassen (FYI, dies würde dazu führen, dass ApplyRE.exe oder ApplyRE.bat stattdessen ausgeführt werden, falls eine vorhanden ist).
D:\my scripts>ApplyRE lexicon-sample.txt -o
Running... Done.
Hinzufügen von Skripten zum Systempfad
Wenn Sie Ihre Skripte häufig über die Eingabeaufforderung verwenden (dies ist weniger wichtig, wenn Sie BAT-Dateien verwenden), sollten Sie den Ordner Ihrer Skripte zum Systempfad hinzufügen. (Neben PATHEXT sollte eine PATH-Variable angezeigt werden. Fügen Sie "; D: \ my scripts" ohne Anführungszeichen hinzu.) Auf diese Weise können Sie ein Skript von einem anderen Speicherort aus für die Dateien am aktuellen Speicherort ausführen, z.
C:\some files>ApplyRE "some lexicon.txt" "some lexicon OUT.txt" -o
Running... Done.
Erfolg! Das ist so ziemlich alles, was Sie tun müssen, um die Befehlszeile zu optimieren.
Laufen direkt, ohne den Pfad zu ändern
Wenn Sie schnell schreiben oder keine Batchdatei für jede Situation erstellen möchten, können Sie vollständige Pfade (für das Skript oder für die Parameter) angeben, anstatt PATH zu optimieren.
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.
Erstellen von Verknüpfungen oder Batchdateien
Wenn .py mit einem installierten Python verknüpft ist, können Sie einfach auf ApplyRE.py doppelklicken, um es auszuführen. Die Konsole wird jedoch möglicherweise zu schnell angezeigt und ausgeblendet, um die Ausgabe zu lesen (oder ein Fehler!). Um Parameter zu übergeben, müssen Sie zunächst einen der folgenden Schritte ausführen. (a) Klicken Sie mit der rechten Maustaste und erstellen Sie eine Verknüpfung. Klicken Sie mit der rechten Maustaste auf die Verknüpfung, um Eigenschaften zu bearbeiten und Parameter an Target anzuhängen. (b) Erstellen Sie eine Batchdatei - eine Nur-Text-Datei mit einem eindeutigen Namen wie ApplyRErun.bat. Diese Option ist wahrscheinlich besser, da Sie sie zum Anhalten auffordern können, damit Sie die Ausgabe sehen können. Hier ist ein Beispiel für den Inhalt einer BAT-Datei, der so geschrieben wurde, dass er von c: \ einigen Dateien gefunden und ausgeführt werden kann.
python "d:\my scripts\ApplyRE.py" "some lexicon.txt" "some lexicon OUT.txt" -o
pause
Erweitert: an PYTHONPATH anhängen
Dies ist normalerweise nicht erforderlich, aber eine andere Umgebungsvariable, die relevant sein kann, ist PYTHONPATH. Wenn wir d: \ my-Skripte an diese Variable anhängen, könnten andere Python-Skripte an anderen Speicherorten diese über Importanweisungen verwenden.