[Python-de] raw_input
Martin v. Loewis
martin at v.loewis.de
Thu Oct 3 15:55:26 EDT 2002
Gregor Lingl <glingl at aon.at> writes:
> Gesucht ist eine leicht verständliche und leicht auszuführende Lösung
> des Problems.
Leider hat das Problem keine leicht verständliche und leicht
auszuführende Lösung. Es wäre am besten, es existierte gar nicht; man
kann es mit
Index: PyShell.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Tools/idle/PyShell.py,v
retrieving revision 1.41
diff -u -r1.41 PyShell.py
--- PyShell.py 12 Sep 2002 20:34:41 -0000 1.41
+++ PyShell.py 3 Oct 2002 12:46:33 -0000
@@ -488,6 +488,12 @@
if self.endoffile:
self.endoffile = 0
return ""
+ if isinstance(line, unicode):
+ import IOBinding
+ try:
+ line = line.encode(IOBinding.encoding)
+ except UnicodeError:
+ pass
return line
def isatty(self):
etwas entschärfen (das setzt CVS IDLE voraus) - dein Beispiel führt
dann nicht mehr zu einem Fehler.
> def raw_input(prompt):
> from sys import stdin, stdout
> stdout.wirte(prompt)
> return stdin.readline()
>
> zu überschreiben.
>
> Handelt man sich dadurch irgendwelche wesentlichen Nachteile ein?
Nun ja, in diesem Fall ist das Ergebnis von raw_input u.U. ein
Unicode-String - ob das akzeptabel ist, hängt davon ab, was man damit
machen will.
> 1) Ersetzen der IDLE-Module, die den Fehler verursachen, durch gepatchte.
> Doch gibt es solche? Welche sind das? Wo findet man sie?
Das Problem ist echt kompliziert. Was immer der Lösungsvorschlag ist -
ich finde ein Beispiel, bei dem er scheitert. CVS-IDLE mit meinem
Patch ist vielleicht die Lösung mit am wenigsten unerwarteten
Ergebnissen.
> Was ratet ihr? Alles ist besser, als kommentarlos zu übergehen, dass
> raw_input in der IDLE normale deutsche Sätze nicht verträgt.
Ich denke, dass wäre auch eine gute Lösung: In der nächsten Version
verträgt IDLE normale deutsche Sätze.
Vielleicht sollte man einfach erklären, was ein Bug ist - das gehört
ja auch zum Alltag mit Computern.
Ciao,
Martin
More information about the Python-de
mailing list