Windows CMD Line & sys.argv

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Benutzeravatar
Sr4l
User
Beiträge: 1091
Registriert: Donnerstag 28. Dezember 2006, 20:02
Wohnort: Kassel
Kontaktdaten:

Windows CMD Line & sys.argv

Beitragvon Sr4l » Freitag 3. Oktober 2008, 15:31

Python Datei "lol.py"

Code: Alles auswählen

import sys
for x in range(len(sys.argv)):
    print "sys.argv ", x, ":::", sys.argv[x]


Output von lol.py
[code=]C:\>lol.py lol lal 123 456
sys.argv 0 ::: C:\lol.py[/code]

Ich frage mich warum das unter der Windows CMD nicht funktioniert?
Früher ging das unter Windows.

Python Version ist 2.5.2 32bit auf einem 64bit OS

über Cygwins Python 2.5.1 32bit auf 64bit OS geht es.
[code=]C:\>python lol.py lol lal 123 456
sys.argv 0 ::: lol.py
sys.argv 1 ::: lol
sys.argv 2 ::: lal
sys.argv 3 ::: 123
sys.argv 4 ::: 456[/code]


Ist das vielleicht ein Python Bug unter Vista (64bit) SP1, kann das vielleicht jemand mit Vista SP1 bestätigen? ich glaube vor SP1, was ich erst 2Monate drauf habe ging es. Habe Python schon erneut installiert um diesen Fehler auszuschließen.
Benutzeravatar
Hyperion
Moderator
Beiträge: 7472
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Beitragvon Hyperion » Freitag 3. Oktober 2008, 15:38

Löst Dein Problem nicht, aber so geht's auch ohne len und range (ungetestet):

Code: Alles auswählen

import sys
for index, arg in enumerate(sys.argv):
    print "sys.argv ", index, ":::", arg
Benutzeravatar
Sr4l
User
Beiträge: 1091
Registriert: Donnerstag 28. Dezember 2006, 20:02
Wohnort: Kassel
Kontaktdaten:

Beitragvon Sr4l » Freitag 3. Oktober 2008, 16:04

Das ist mir nicht neu, ich habe nur ein minimal Beispiel geschrieben was schon nicht funktioniert.
Das Programm habe ich unter Linux angefangen, vorgestern ist das Netzteil meines Laptops durchgebrannt, so das ich mein Projekt an Windows fortsetzen muss.
Benutzeravatar
Hyperion
Moderator
Beiträge: 7472
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Beitragvon Hyperion » Freitag 3. Oktober 2008, 16:09

Hab mal eine Minute gegoogelt. Vielleicht hilft Dir das weiter?

http://bytes.com/forum/thread587551.html
Benutzeravatar
Sr4l
User
Beiträge: 1091
Registriert: Donnerstag 28. Dezember 2006, 20:02
Wohnort: Kassel
Kontaktdaten:

Beitragvon Sr4l » Freitag 3. Oktober 2008, 17:59

Jop danke das wars.

Python.File="C:\Python25\python.exe" "%1" %*


Ich hatte in Hkey Classes Root mehrere Python Einträge.
Python, Python.AX..., Python.Dictionary, Python.Dictionary.1, und Python.File wo die Einträge richtig waren, aber es gab noch den Eintrag "py_auto_file" und in darin war der Eintrag falsch.

Danke.

Wer ist online?

Mitglieder in diesem Forum: Bing [Bot]