Seite 1 von 1
Unterschied "python test.py" und "test"
Verfasst: Montag 22. Oktober 2007, 10:07
von wivaxing
Hi,
wo kann der Unterschied liegen wenn die Ausführung eines Scriptes mit
"python test.py" funktioniert
"test" oder "test.py" aber nicht immer.
Es scheint um irgendwelche Pfade und Imports zu gehen, wo kann ich aber finden, wie er sich in diesen Szenarios unterschiedlich verhält und dieses unterschiedliche Verhalten ändern bzw. angleichen?
danke
Verfasst: Montag 22. Oktober 2007, 10:16
von meneliel
Rufst du es von unterschiedlichen Betriebssystemen auf?
Verfasst: Montag 22. Oktober 2007, 10:22
von Rebecca
Unter Linux:
ist das gleiche wie
wenn:
1. test.py Ausfuehrrechte hat
2. in der Shebang der gleiche Interpreter aufgerufen wird wie mit dem Befehl "python"
Verfasst: Montag 22. Oktober 2007, 10:39
von meneliel
unter Windows funktioniert auch
Aber das kommt wohl auf die Windowsversion an...
Bei mir funktioniert sogar
gar nicht.
Verfasst: Montag 22. Oktober 2007, 11:03
von BlackVivi
meneliel hat geschrieben:Bei mir funktioniert sogar
gar nicht.
Das liegt ganz klar an den Umgebungsvariablen.
Systemsteuerung --> System --> Erweitert --> Umgebungsvariablen --> Bei Systemvariablen unter PATH den Pfad zu Python hinzufügen.
Dann sollte das auch gehen.
Verfasst: Montag 22. Oktober 2007, 11:11
von meneliel
och, kann es ja aber normal aufrufen, in dem ich z.B nur test.py eingebe, ohne python davor.
Interessant wäre nun aber trotzdem, warum test.py bei wivaxing nur manchmal funktioniert.
Müsste doch wenn dann immer gehen?
Verfasst: Montag 22. Oktober 2007, 17:06
von Y0Gi
meneliel hat geschrieben:unter Windows funktioniert auch
Aber das kommt wohl auf die Windowsversion an...
Eher auf die Einstellungen. Bei mir öffnet sich dann mein Editor und lädt das genannte Python-Script. Es hängt von der Standardaktion ab, die unter Windows für den jeweiligen Dateityp eingestellt ist. Der Default ist das Ausführen mit Python, daher wird dein Programm gestartet, bei mir wäre das nicht der Fall.
meneliel hat geschrieben:Bei mir funktioniert sogar
gar nicht.
Bei mir schon. Dazu habe ich das Verzeichnis der Python-Installation in die Pfad-Umgebungsvariable aufgenommen. Das kann z.B. über die `AUTOEXEC.BAT` mittels dieser Zeile erfolgen:
Code: Alles auswählen
PATH=%PATH%;C:\Programme\Python;C:\Programme\Python\Scripts
Der zweite Pfad enthält bei mir ebenfalls ausführbare Dateien (Wrapper-Executables für Python-Scripts, die teils von setuptools, teils manuell mit dem ExeMaker von Fredrik Lundh erstellt wurden).
Verfasst: Montag 29. Oktober 2007, 11:26
von wivaxing
Vielen Dank.
Ich vermute das irgendwo eine zweite Config-Datei oder ähnliches liegt und das so manche externe Bibliotheken nicht geladen werden können. Allerdings konnte ich da so nichts finden und die Environments scheinen korrekt zu sein.
Der einzige Unterschied, der mir vom Start weg aufgefallen ist. Wenn ich mit
python Test.py starte, enthält
argv=['Test.py'], beim Start nur durch
Test.py den kompletten Pfad
argv=['E:\\MyProjects\\Python\\Test.py']
