Python 3.0 und utf-8

12/12/2008 - 20:51 von Hermann Riemann | Report spam
Anhand der Seiten
http://www.heise.de/developer/Freie...ung/119858
http://docs.python.org/dev/3.0/whatsnew/3.0.html
und
http://docs.python.org/dev/3.0/howt...code-howto

Versuche ich herauszubekommen,
wie die string-Verarbeitung in Python 3.0 passiert
und wie damit umzugehen ist.

PEP 3120: The default source encoding is now UTF-8.
kann ich also im source weiterhin utf-8 verwenden,
und brauche die Einstellung nicht mehr.

meine Textdateien sind überwiegen utf-8
( einige alte iso-8*-1)
und meine Textausgabe überwiegen utf-8.

Muß ich jetzt mein open(filename
durch f = open(filename, encoding='utf-8'
ersetzen?

Habe ich es richtig verstanden,
das strings dann intern als utf-16 oder utf-32
( welches von beiden habe ich nicht herausgefunden)
verarbeitet werden?
Also "bàh"[1] 'à'ergibt?
Und die gelegentlich hex-Ausgabe bei print nicht mehr auftaucht?

Hermann
der momentan das Gefühl hat, der Wechsel von Python 2.* nach 3.*
könnte soviel Arbeit bewirken wie die Umstellung von html 3.2
nach html 4.0 strict.

http://www.HermannRiemann.de
 

Lesen sie die antworten

#1 Florian Weimer
12/12/2008 - 21:36 | Warnen spam
* Hermann Riemann:

meine Textdateien sind überwiegen utf-8
( einige alte iso-8*-1)
und meine Textausgabe überwiegen utf-8.

Muß ich jetzt mein open(filename
durch f = open(filename, encoding='utf-8'
ersetzen?



Nur wenn die Systemumgebung nicht korrekt für UTF-8 konfiguriert ist.

Habe ich es richtig verstanden,
das strings dann intern als utf-16 oder utf-32
( welches von beiden habe ich nicht herausgefunden)
verarbeitet werden?
Also "bàh"[1] 'à'ergibt?



Ja, das sollte geschehen.

Und die gelegentlich hex-Ausgabe bei print nicht mehr auftaucht?



Das weiß ich nicht.

Hermann
der momentan das Gefühl hat, der Wechsel von Python 2.* nach 3.*
könnte soviel Arbeit bewirken wie die Umstellung von html 3.2
nach html 4.0 strict.



Wenn Du eine Testsuite hast, sollte es einfacher sein, die Semantik zu
erhalten.

Ähnliche fragen