Seite 1 von 1

Ordnungszahlen (binär, hexadezimal, ascii, unicode)

Verfasst: Sonntag 13. April 2014, 09:49
von duodiscus
Morgen zusammen,
habe ein Programm geschrieben, das mir zu jedem einzelnen Buchstaben die Ordnungszahl Dezimal ausgibt, sprich für 'H' -> 72. Die Ausgabe bekomme ich ja mit ord(). Doch wie bekomme ich die Ordnungszahl in Hexadezimal? Gibt es dafür auch einen Befehl? Danke für Tipps mal wieder!

Edit: Mit binascii.hexlify(data) bin ich bisher nicht klar gekommen...

Code: Alles auswählen

   print(c, ord(c), binascii.hexlify(c))
TypeError: 'str' does not support the buffer interface

Re: Ordnungszahlen (binär, hexadezimal, ascii, unicode)

Verfasst: Sonntag 13. April 2014, 09:58
von Sirius3
@duodiscus: mit ord erhältst Du zu einem Zeichen seine Position im Unicode, also eine Zahl. Wie die Zahl dargestellt wird, hängt davon ab, wie Du die Zahl ausgibst.

Code: Alles auswählen

>>> print("{0:c} dez:{0:d} hex:{0:x}".format(ord('H'))
H dez:72 hex:48

Re: Ordnungszahlen (binär, hexadezimal, ascii, unicode)

Verfasst: Sonntag 13. April 2014, 10:05
von duodiscus
Danke für deine schnelle Antwort!
Schaue mir die Formatierungen mit print nochmal genauer an!