Python Str vs Unicode-Typen
Wenn ich mit Python 2.7 arbeite, frage ich mich, welchen wirklichen Vorteil die Verwendung des Typs hatunicode
anstattstr
, da beide in der Lage zu sein scheinen, Unicode-Strings aufzunehmen. Gibt es einen besonderen Grund, außer dass Unicode-Codes eingegeben werden können?unicode
Zeichenketten mit dem Escapezeichen\
?:
Ausführen eines Moduls mit:
# -*- coding: utf-8 -*-
a = 'á'
ua = u'á'
print a, ua
Ergebnisse in: á, á
BEARBEITEN:
Weitere Tests mit der Python-Shell:
>>> a = 'á'
>>> a
'\xc3\xa1'
>>> ua = u'á'
>>> ua
u'\xe1'
>>> ua.encode('utf8')
'\xc3\xa1'
>>> ua.encode('latin1')
'\xe1'
>>> ua
u'\xe1'
Also, dieunicode
Zeichenfolge scheint mit codiert zu seinlatin1
anstattutf-8
und die rohe Zeichenfolge wird mit codiertutf-8
? Ich bin jetzt noch verwirrter! : S