[Uwe Schmitt Sun, Dec 28, 2003 at 12:47:47PM +0100]
Hi,
ich lass den geposteten Spaghetti-Code mal weg, ist für eine Liste/Newsgroup/... eh viel zu lange...
Hmmm, ich finde, es gibt keinen guten Grund, solche abfaelligen Bemerkungen ("Spagetti Code") zu schreiben, selbst wenn der gepostete Code lang ist.
War eigentlich nicht wertend gemeint,...
Als Faustregel sehe ich:
intern *immer* unicode objekte verwenden und bei Interaktionen mit fremden Subsystemen (xml-parser, latex-output etc.) die Encodings ermitteln/produzieren, aber intern weiterhin alles in unicode halten.
Genau diese Vorgehensweise führt zu einer großen Wiederverwendbarkeit und Orthogonalität der einzelnen Komponenten.
Ich glaube, vieles waere einfacher, wenn man die automatische Konvertierung (Coercion) von Bytestrings nach unicode-zeichenketten wenigstens zu debug-zwecken komplett unterbinden koennte. Der automatische Versuch, bei einer 'bytestring + unicodestring' Operation den bytestring als US-ASCII kodiert zu betrachten und implizit in ein Unicode-Objekt zu wandeln, ist vielleicht "convenient" (insbesondere fuer US-spezifische Applikationen :-) aber fuehrt eben manchmal zu schwer debugbaren Problemen.
Ich benutze daher "%s%s" % (str1, str2) bzw. u"%s%s" % (str1, str2) statt str1+str2. Gibt mehr Fehlermeldungen aus, und man sieht dem Code auch an, was am Ende rauskommt.. Gruß, Uwe _______________________________________________ Python-de maillist - Python-de@python.net http://python.net/mailman/listinfo/python-de