python 16进制转字符串

2023-03-07 00:00:00 python 字符串 进制转

在 Python 中,你可以使用 bytes.fromhex() 方法将 16 进制字符串转换为字节对象(bytes)。然后,你可以使用 decode() 方法将字节对象转换为字符串。

以下是将 16 进制字符串转换为字符串的示例代码:

# 将 16 进制字符串转换为字符串
hex_string = '48656c6c6f2c20576f726c6421'
bytes_obj = bytes.fromhex(hex_string)
s = bytes_obj.decode('utf-8')
print(s)

输出结果将是:

Hello, World!

在上面的代码中,我们首先创建了一个 16 进制字符串 hex_string,它代表一个 ASCII 字符串。然后,我们使用 bytes.fromhex() 方法将 16 进制字符串转换为字节对象 bytes_obj。最后,我们使用 decode() 方法将字节对象转换为字符串 s,并将其打印出来。

请注意,如果字节对象使用的不是 UTF-8 编码,则需要指定相应的字符集,否则可能会出现乱码。同时,如果 16 进制字符串中包含非 ASCII 字符,你可能需要使用其他的编码方式进行转换。

相关文章