📅  最后修改于: 2023-12-03 15:38:24.266000             🧑  作者: Mango
在 Python 中,我们可以使用 binascii
模块中的 hexlify()
和 unhexlify()
函数来进行十六进制的编码和解码。
十六进制编码,即将普通的字符串转换为十六进制字符串。
import binascii
# 编码前的字符串
str_before = "Hello, World!"
# 将字符串编码为十六进制字符串
hex_str = binascii.hexlify(str_before.encode('utf-8'))
# 输出十六进制字符串
print(hex_str)
输出:
b'48656c6c6f2c20576f726c6421'
可以看到,原先的字符串被编码为了一堆十六进制字符组成的字符串。需要注意的是,编码的字符串需要先转换为 bytes
类型才能使用 hexlify()
函数。
十六进制解码,即将十六进制字符串转换回普通的字符串。
import binascii
# 十六进制字符串
hex_str = b'48656c6c6f2c20576f726c6421'
# 将十六进制字符串解码为普通字符串
str_after = binascii.unhexlify(hex_str).decode('utf-8')
# 输出解码后的字符串
print(str_after)
输出:
Hello, World!
同样需要注意的是,解码后的字符串需要使用 decode()
函数进行解码,并且结果为 bytes
类型,需要再次转换为 str
类型。