Python 2.x では、これを行うことができます。
>>> '4f6c6567'.decode('hex_codec')
'Oleg'
しかし、Python 3.2 では、次のエラーが発生します。
>>> b'4f6c6567'.decode('hex_codec')
Traceback (most recent call last):
File "<pyshell#25>", line 1, in <module>
b'4f6c6567'.decode('hex_codec')
TypeError: decoder did not return a str object (type=bytes)
ドキュメント によると、hex_codec
「バイトからバイトへのマッピング」を提供する必要があります。したがって、ここでは byte-string のオブジェクトが正しく使用されています。
16 進数でエンコードされたテキストから変換するための扱いにくい回避策を回避できるように、このエラーを取り除くにはどうすればよいですか?