[Python-de] raw_input

Martin v. Loewis martin at v.loewis.de
Thu Oct 3 23:05:08 EDT 2002


Gregor Lingl <glingl at aon.at> writes:

> Würde dieses Problem durch die folgende Änderung der letzten Zeile
> 
>      return str(stdin.readline())
> 
> gelöst. Welches neue Problem würde da entstehen. Mein Beispiel läuft
> jedenfalls auch mit
> dieser Version.

Hast Du das system encoding auf Latin-1 geändert oder so?

>>> str(u"Cl\xe4rchen")
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
UnicodeEncodeError: 'ascii' codec can't encode character '\ue4' in position 2: ordinal not in range(128)

Wenn ja, dann macht Deine Version im Prinzip das Gleiche wie mein
Patch, allerdings mit folgenden Problemen:

- bei einer "blanken" Python-Installation ist das system encoding
  "ascii". Damit funktioniert Deine Lösung u.U. nicht auf allen
  Installationen.

- Unter Unix kann das system encoding von der bevorzugten Kodierung
  des Nutzers abweichen. Wenn man "weiß", dass alle Nutzer
  deutschsprachig sind, ist "iso-8859-1" eine gute Wahl - bis jemand
  anfängt, Eurozeichen einzutippen.

Ciao,
Martin





More information about the Python-de mailing list