无法将字符串转换为十六进制

Cannot convert string to hex

我试图在 Python 上将字符串转换为十六进制,但我做错了。

在此站点上:http://string-functions.com/string-hex.aspx 我得到了以下转换后的代码

"60b6e02de9a758dbf43c0756f59e1d6558b46b462865a3b66d7922e8a2962175"

有效,但在我的 Python 脚本中我得到了

"60c2b6c3a02dc3a9c2a758c39bc3b43c0756c3b5c5be1d6558c2b46b462865c2a3c2b66d7922c3a8c2a2e280932175".

有问题的字符串是:

`¶à-é§XÛô<VõžeX´kF(e£¶my"袖!u

并且使用的 Python 脚本:

import binascii
x = '`¶à-é§XÛô<VõžeX´kF(e£¶my"袖!u'
a = x.encode('utf-8')
hex_bytes = binascii.hexlify(a)
print(hex_bytes)

正如 Yann Vernier 所建议的,the webpage 似乎是用 cp1252 在诅咒之前:

import binascii

x = u'`¶à-é§XÛô<VõžeX´kF(e£¶my"袖!u'
hex_bytes = binascii.hexlify(x.encode('cp1252')) 
print(hex_bytes)

产量

60b6e02de9a758dbf43c56f59e6558b46b462865a3b66d7922e8a2962175