7

只是寻找可以将所有字符从普通字符串(所有英文字母)转换为 python 中的 ascii hex 的 python 代码。我不确定我是否以错误的方式问这个问题,因为我一直在寻找这个,但似乎找不到这个。

我一定只是忽略了答案,但我希望得到一些帮助。

澄清一下,从 'Hell' 到 '\x48\x65\x6c\x6c'

4

4 回答 4

7

我想''.join(r'\x{02:x}'.format(ord(c)) for c in mystring)会做的伎俩...

>>> mystring = "Hello World"
>>> print ''.join(r'\x{02:x}'.format(ord(c)) for c in mystring)
\x48\x65\x6c\x6c\x6f\x20\x57\x6f\x72\x6c\x64
于 2013-03-08T14:25:14.213 回答
6

根据 Jon Clements 的回答,尝试 python3.7 上的代码。我有这样的错误:

>>> s = '1234'    
>>> hexlify(s)    
Traceback (most recent call last):    
  File "<pyshell#13>", line 1, in <module>    
    hexlify(s)    
TypeError: a bytes-like object is required, not 'str'

通过以下代码解决:

>>> str = '1234'.encode()    
>>> hexlify(str).decode()   
'31323334'
于 2019-10-11T10:55:22.627 回答
4

就像是:

>>> s = '123456'
>>> from binascii import hexlify
>>> hexlify(s)
'313233343536'
于 2013-03-08T14:27:39.290 回答
2

尝试:

" ".join([hex(ord(x)) for x in myString])
于 2013-03-08T14:25:33.627 回答