我有个问题。我有这根绳子:

a=O\x8c\x90\x05\xa1\xe2!\xbe

如果我使用:
c=str.encode(a)

结果是:
b'O\\x8c\\x90\\x05\\xa1\\xe2!\\xbe'

我需要那些双反斜杠是单反斜杠,我真正需要的数据类型是字节。我需要归还这个:
c=b'0\x8c\x90\x05\xa1\xe2!\xbe'

和类型(c)==字节
知道吗?

最佳答案

您可以将带编码的str.decode()用作unicode-escape。然后使用所需的编码将其解码,以返回字节数组。示例-

c = a.decode('unicode-escape').encode('<required encoding>')

演示-
>>> a
b'O\\x8c\\x90\\x05\\xa1\\xe2!\\xbe'
>>> c = a.decode('unicode-escape').encode('ISO-8859-1')
>>> c
b'O\x8c\x90\x05\xa1\xe2!\xbe'

关于python - Python-String to Bytes转换。 Double BackSlash问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33257875/

10-10 04:48