Seite 1 von 1

"<" funktioniert nicht mehr unter Python 2.6.5

Verfasst: Montag 3. Mai 2010, 18:54
von HWK
Nachdem ich ein Upgrade auf Python 2.6.5 durchgeführt habe funktioniert "<" in der Commandline von Windows XP nicht mehr, z.B. in Test.py < Test.txt. Ich erhalte: EOFError: EOF when reading a line. Wenn ich dasselbe Programm mit einer ebenfalls installierten 2.4-Version starte, klappt es wieder. Bis Python 2.6.4 funktionierte das trotz parallel installierter 2.4-Version problemlos. Außer der Installation von 2.6.5 habe ich nichts geändert. Hat jemand eine Idee?
MfG
HWK

Verfasst: Montag 3. Mai 2010, 20:32
von fhoech
Das funktioniert bei mir auch schon seit einiger Zeit nicht (bin mir zwar nicht sicher, seit welcher Python-Version genau, aber zumindest seit 2.6.4). Es gibt allerdings einen Weg: Ruf die Datei mit dem Interpreter auf.
python test.py < test.txt
So klappts bei mir.

Verfasst: Montag 3. Mai 2010, 20:33
von Sr4l
Mir fällt nichts dazu ein, aber bei mir Python 2.6.5, Win7 32bit funktioniert sys.stdin erwartungsgemäß in der Standard cmd und in MSYS.

*edit* sowohl `python file.py < file.txt` als auch `file.py < file.txt`funktionieren bei mir, bei python 2.6.4 hat mindestens eine Variante funktioniert, habe jedoch nur eine Version raus.

Verfasst: Montag 3. Mai 2010, 21:41
von HWK
fhoech hat geschrieben:Das funktioniert bei mir auch schon seit einiger Zeit nicht (bin mir zwar nicht sicher, seit welcher Python-Version genau, aber zumindest seit 2.6.4). Es gibt allerdings einen Weg: Ruf die Datei mit dem Interpreter auf.
python test.py < test.txt
So klappts bei mir.
Stimmt. Ich dachte, es würde an der anderen Python-Version liegen, da ich 2.4 so aufgerufen habe. Es klappt aber auch mit 2.6.
Danke
HWK

Verfasst: Montag 3. Mai 2010, 23:11
von jbs
Ist das Problem ähnlich wie hier: http://www.python-forum.de/post-168760.html#168760?

Verfasst: Dienstag 4. Mai 2010, 07:04
von ms4py
Sr4l hat geschrieben:Mir fällt nichts dazu ein, aber bei mir Python 2.6.5, Win7 32bit funktioniert sys.stdin erwartungsgemäß in der Standard cmd.
dito (64bit)

Scheint das selbe Problem zu sein. Sehr seltsam.
@HWK: Kannst du das bestätigen?

Verfasst: Dienstag 4. Mai 2010, 12:06
von HWK
jbs hat geschrieben:Ist das Problem ähnlich wie hier: http://www.python-forum.de/post-168760.html#168760?
Nein.

@ms4py: Das Skript hatte ich aus cmd gestartet, raw_input() und input() quittierten aber den Dienst mit o.g. Fehlermeldung. Ich habe jetzt noch sys.stdin.read() getestet. Dabei gibt es ein IOError: [Errno 9] Bad file descriptor.
\Programme\Python26\python.exe test.py < test.txt funktioniert aber wieder einwandfrei.
MfG
HWK

Verfasst: Dienstag 4. Mai 2010, 13:35
von ms4py
Okay, scheint ein generelles XP-Problem zu sein, in meiner XP-VM taucht das selbe Problem auf (Python 2.6.4). Hab noch ein bisschen mit den Kodierungen der Input- und Source-Datei und den Zeilenenden rumgespielt, bin aber auch nicht weitergekommen...