[Python-de] OOP mit Python

Martin v. Loewis martin at v.loewis.de
Son Dez 28 12:12:15 CET 2003


kgm wrote:

> Die Python-Unicde-Implementierung ist meiner Meinung nach mindestens 
> "undurchsichtig".
> Ich gehe da aber lieber nicht weiter drauf ein, damit habe ich mich 
> schon "unbeliebt" gemacht.

Das ist schade (beides: Dass Du glaubst, Dich "unbeliebt gemacht zu
haben, und dass Du nicht erläutern willst, warum Du die Implementierung
für "undurchsichtig" hälst).

Die Unicode-Implementierung folgt einigen wenigen klaren Prinzipien:
1. Es gibt zwei String-Typen: <type 'str'> und <type 'unicode'>.
    Das sind völlig verschiedene Datentypen.
2. <type 'str'> repräsentiert Bytes (Listen von Werten zwischen
    0 und 255).
3. <type 'unicode'> repräsentiert Zeichenketten (Buchstaben, Zahlen,
    Punkierung usw).
4. Zwischen <type 'str'> und <type 'unicode'> kann man umwandeln:
    a) str -> unicode: decoding
    b) unicode -> str: encoding
    Zur Umwandlung benötigt man stets und immer ein "Encoding".
5. Falls versucht wird, <type 'str'> und <type 'unicode'> ohne
    Konvertierung zu mischen, wird das "system default encoding"
    ('us-ascii') als Encoding verwendet.

Diese Prinzipien halte ich nicht für undurchsichtig - deshalb
die Bitte, näher zu erläutern.

Ciao,
Martin