2010-12-02 9 views
1

Ich versuche herauszufinden, wie die Unicode-Unterstützung in Python verwenden; Ich möchte diese Zeichenfolge in Unicode konvertieren: "ABCDE" -> "\ x00A \ x00B \ X00C \ x00D \ x00E"Python Unicode-Unterstützung

Alle functionnality Einbau-das kann, oder soll ich beitreten verwenden()

Danke!

Antwort

5

Das ist UTF-16BE, nicht Unicode.

>>> 'ABCDE'.decode('ascii').encode('utf-16be') 
'\x00A\x00B\x00C\x00D\x00E' 
+0

warum würden Sie das '.decode ('ascii') 'Bit einfügen? Der '.encode ('utf-16be')' (''\ xff'.encode (' utf-16be ')' wird mit einem UnicodeDecodeError ascii-Codec-Fehler auf die gleiche Weise wie' '\ xff'.decode fehlschlagen ('ascii') 'will) –

+1

@Chris: Um es dem Leser zu verdeutlichen, dass er * irgendwie * entschlüsselt werden muss. –

2

Der Schlüssel Unicode in Python zu verstehen ist, die Unicode-UNICODE bedeutet. Ein Unicode-Objekt ist eine idealisierte Darstellung für die Zeichen, keine tatsächlichen Bytes.

+3

Pflichtlektüre: http://farmdev.com/talks/unicode/ –

+4

Auch erforderlich lesen: http://www.joelonsoftware.com/articles/Unicode.html –

0

Das str-Objekt sollte zunächst durch Dekodierung in ein Unicode-Objekt konvertiert werden. Dann konvertieren Sie das Unicode-Objekt mit der Methode encode mit der gewünschten Zeichencodierung in das str-Objekt.