”工欲善其事,必先利其器。“—孔子《论语.录灵公》
首页 > 编程 > 如何在Python中将十六进制字符串转换为字节?

如何在Python中将十六进制字符串转换为字节?

发布于2024-12-22
浏览:952

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中,您可以使用带有“hex”的decode()方法将十六进制字符串解码为字符串参数。

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

虽然此方法不会创建 bytearray 或 bytes 对象,但它为旧版本的 Python 提供了解决方法。

最新教程 更多>

免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。

Copyright© 2022 湘ICP备2022001581号-3