python如何让字符以十六进制显示

python如何让字符以十六进制显示

作者:Joshua Lee发布时间:2026-01-14阅读时长:0 分钟阅读次数:6

用户关注问题

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

我有一个普通字符串,想把它显示成十六进制格式,该怎么做?

A

使用编码和hex函数转换字符串为十六进制

可以先将字符串编码成字节对象,例如使用utf-8编码,然后使用字节对象的hex()方法来得到十六进制表示。例如:

s = 'hello'
hex_str = s.encode('utf-8').hex()
print(hex_str)  # 输出 68656c6c6f
Q
Python中怎样把十六进制格式的字符串转换回普通字符串?

如果我已经有一个十六进制字符串,想把它还原成可读的文本格式,该如何操作?

A

利用bytes.fromhex()和decode()实现反转换

可以使用bytes.fromhex()方法将十六进制字符串转换为字节对象,再通过decode()方法将字节对象解码为字符串。例如:

hex_str = '68656c6c6f'
s = bytes.fromhex(hex_str).decode('utf-8')
print(s)  # 输出 hello
Q
能用Python打印字符串中每个字符对应的十六进制值吗?

想要逐个查看字符串中各个字符的十六进制编码,有没有简单的方法?

A

通过遍历字符串编码的字节并使用格式化输出来实现

先将字符串编码成字节数组,然后使用循环遍历字节,利用格式化字符串输出十六进制数。例如:

s = 'hello'
for b in s.encode('utf-8'):
    print(hex(b))

输出为:
0x68
0x65
0x6c
0x6c
0x6f