Wie verwende ich die Hex-Codierung in Python 3.2 oder höher?

In Python 2 können Sie eine Zeichenfolgendarstellung der hexadezimalen Ziffern in einer Zeichenfolge abrufen

>>> '\x12\x34\x56\x78'.encode('hex')
'12345678'

In Python 3 funktioniert das nicht mehr (getestet auf Python 3.2 und 3.3):

>>> '\x12\x34\x56\x78'.encode('hex')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
LookupError: unknown encoding: hex

Zumindest gibt eseine Antwort hier auf SO dass erwähnt, dass diehex Codec wurde in Python 3 entfernt. Aber dannlaut den docswurde es in Python 3.2 als "Byte-zu-Byte-Zuordnung" wieder eingeführt.

Ich weiß jedoch nicht, wie ich diese "Byte-zu-Byte-Zuordnungen" zum Laufen bringen soll:

>>> b'\x12'.encode('hex')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'bytes' object has no attribute 'encode'

Und die Docs erwähnen das auch nicht (zumindest nicht, wo ich hingeschaut habe). Ich muss etwas Einfaches vermissen, aber ich kann nicht sehen, was es ist.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage