Bin aber erst darauf gekommen als @rmp das mit den Zeichen welche in Textdateien geschrieben werden unter Windows und der Gleichen erklärt hat.
Um nicht ständig die Seite vom Webserver neu laden zu müssen (also bei jedem 'Testdurchgang') habe ich beschlossen die HTML-Seite in eine 'offline'-HTML-Datei zu speichern und diese als Quelle zu nutzen....
Da ist wohl dann der Zeichensatz durcheinander gekommen und ich habe statt München eben Mónchen bekommen (wenn es denn umkodiert wäre. Was ich bekommen habe ist dann eben den Unicode `u'M\03ccnchen'` und jetzt bekomme ich den Unicode `u'M\xfcnchen'`. BlackJack hat es natürlich gleich gemerkt! Also allergrößten Respekt von mir!).
So, nun haben wir damit herausgefunden das die UTF-8-Angabe ja wohl richtig vom Server definiert und verwendet wird, oder sehe ich das falsch?
Wenn das richtig ist: dann muss ich jetzt lediglich 'encode(charset)' anwenden, richtig? Also Unicode (`u'M\xfcnchen'`) ->für mich lesbares Zeichenkette ('München').
Das mache ich dann mit 'Element der Liste'.enode(charset) ?
In meinem Fall dann:
Code: Alles auswählen
print stadt.enode("ISO 8859-1")
Ich bin zwar einierseits neu verwirrt, aber andererseits kristalliersiert sich da bei mir eine Erkenntnis heraus...
Unicode ist die Basis für Python, Ausgabe, für jedermann in seinem Zeichensatz lesbar, muss !richtig! kodiert werden.
Das wandeln in Python-Standard-Unicode: decode(charset) (-> das Charset der Quelle. Also von was er nach UNICODE wandeln soll). Das wandeln in 'lesbare' Zeichen .encode(charset) (-> das Charset in welches gewandelt werden muss um es dann bei MIR richtig darzustellen).
Also so in etwa:
"Quell-Charset: utf-8" -> DECODE("utf8") -> UNICODE -> "Ziel-Charset: ENCODE("iso 8859-1")
Sagt jetzt bitte ich irrem ich nicht ganz gewaltig sondern nur ein wenig..