[Python-de] UTF-8 Python Datei
"Martin v. Löwis"
martin at v.loewis.de
Die Apr 26 22:16:51 CEST 2005
Simon Pamies wrote:
> Das würde ja bedeuten dass
>
>>>> g = u"Täst".encode('utf8')
>>>> j = 'Täst'
>>>> g==j
>
> eigentlich True ergeben müsste (wegen gerade Python-losen Computer
> ungetestet). Oder lieg ich da falsch oder hab dich falsch verstanden?
Wenn im Skript
# -*- coding:utf-8 -*-
steht, sollte dieser Vergleich tatsächlich True liefern (wenn man
davon absieht, dass es auch verschiedene Unicode-Repräsentation von
"ä" gibt, unter Benutzung von combining characters).
Allerdings ist das encoding im interaktiven Modus noch etwas anders
(kurz: undefiniert), so dass interaktiv dieses Skript seltsame
Resultate liefert. Um UTF-8 wird es sich allerdings oft nicht handeln.
Theoretisch sollte
>>> g = u"Täst".encode(sys.stdin.encoding)
>>> j = 'Täst'
>>> g==j
True liefern, man kann aber Fälle konstruieren, wo es das auch nicht
tut (das ist ein Bug).
Ciao,
Martin