Python 2 では、文字列の 16 進形式を対応する Unicode に変換するのは簡単でした。
comments.decode("hex")
ここで、変数「comments」はファイル内の行の一部です(行の残りの部分はないASCII でのみ表現されるため、変換する必要があります。
しかし、Python 3 では、これは機能しません (バイト/文字列と文字列/Unicode スイッチが原因だと思います)。行全体を一連のバイトとして読み取って (これはやりたくない)、行の各部分を個別に変換するのではなく、Python 3 で同じことを実行するワンライナーがあるべきだと感じています。可能であれば、行全体を Unicode 文字列として読み取り (行の残りの部分は Unicode であるため)、この部分のみを 16 進表現から変換したいと思います。
ベストアンサー1
何かのようなもの:
>>> bytes.fromhex('4a4b4c').decode('utf-8')
'JKL'
実際に使用しているエンコーディングを入力するだけです。