Python 3 でのバイトの 16 進数文字列への変換
Python 3 でバイトを扱う場合、バイトを 16 進数文字列に変換するのが一般的なタスクになることがあります。 。さまざまなアプローチが利用可能であるにもかかわらず、一部の方法では望ましい結果が得られない場合があります。
最新のソリューション: .hex()
Python 3.5 では、この変換を簡素化する専用メソッド bytes.hex() が導入されました。
>>> b'\xde\xad\xbe\xef'.hex() 'deadbeef'
このメソッドは、バイトの 16 進表現を返します。
変換の逆変換
16 進文字列をバイトに戻すには、 bytes.fromhex( ):
>>> bytes.fromhex('deadbeef') b'\xde\xad\xbe\xef'
このメソッドは 16 進文字列を受け入れ、バイト配列を返します。変換では、bytes 型と bytearray 型の両方がサポートされます。
追加の考慮事項
このメソッドは文字列ではなくバイナリ データに対して動作することに注意してください。文字列がある場合は、たとえば bytes(string, 'utf-8') を使用して、最初にバイトにエンコードする必要がある場合があります。
以上がPython 3 でバイトを 16 進文字列に効率的に変換したり、逆に変換したりするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。