首頁 >後端開發 >Python教學 >如何在Python中將十六進位字串轉換為位元組?

如何在Python中將十六進位字串轉換為位元組?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-11 22:40:02514瀏覽

How to Convert Hexadecimal Strings to Bytes in Python?

在Python 中將十六進位字串轉換為位元組

在Python 中,將十六進位字串轉換為位元組是一項常見任務。十六進位字串以人類可讀的格式表示二進位資料。本文將探討有效實現此轉換的各種方法。

方法一:使用 bytearray.fromhex() (建議 Python 3 和 2.7)

bytearray.fromhex() 直接轉換十六進位字串轉換為位元組數組物件。 bytearray 的作用就像一個可變的位元組數組。

hex_string = "deadbeef"
bytearray_object = bytearray.fromhex(hex_string)

此方法為 Python 2.7 和 Python 3 提供了便利的解決方案。

方法2:使用bytes.fromhex() (Python 3僅)

與bytearray.fromhex() 類似,Python 3 提供了bytes.fromhex() 來創建位元組直接從十六進位字串物件。 bytes 物件是不可變的,表示不可變位元組序列。

hex_string = "deadbeef"
bytes_object = bytes.fromhex(hex_string)

建議在 Python 3 中使用此方法,因為它會傳回更合適的類型。

方法3:使用字串解碼(僅Python 2.7)

在Python 2.7中,您可以使用decode()方法將十六進位字串解碼為字串“hex”參數。

hex_string = "deadbeef"
string_data = hex_string.decode("hex")

雖然此方法不會建立位元組數組或位元組對象,但它為舊版本的 Python 提供了解決方法。

以上是如何在Python中將十六進位字串轉換為位元組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn