我检查了关于这个问题的所有堆栈溢出问题,没有人能回答我的问题,我需要将\\转换为\。
编辑:
这就是我想要做的:
>>> a = b'\xe5jb\x8c?Q$\xf3\x1d\x97^\xfa3O\xa6U.txt'
>>> b = str(a)
>>> b
"b'\\xe5jb\\x8c?Q$\\xf3\\x1d\\x97^\\xfa3O\\xa6U.txt'"
>>> b = b.replace('b\'','')
>>> b = b[:len(b)-1]
>>> b
'\\xe5jb\\x8c?Q$\\xf3\\x1d\\x97^\\xfa3O\\xa6U.txt'
>>> c = bytes(b,'utf8')
>>> c
b'\\xe5jb\\x8c?Q$\\xf3\\x1d\\x97^\\xfa3O\\xa6U.txt'
>>> a == c
False我如何使a==c成为现实?我试过了
.replace("\\\\","\\") 但这没什么用。字符串保持不变。我需要将变量'a‘中的字节作为文本存储到文件中,并将其调用回来。Python-3.8,Windows=10
发布于 2020-03-29 08:14:56
可以使用c方法将decode转换为字符串,然后使用b'...'包装后使用ast.literal_eval将其计算为字节文本。
from ast import literal_eval
a = b'\xe5jb\x8c?Q$\xf3\x1d\x97^\xfa3O\xa6U.txt'
c = b'\\xe5jb\\x8c?Q$\\xf3\\x1d\\x97^\\xfa3O\\xa6U.txt'
c = literal_eval("b'%s'" % c.decode())
print(a == c)输出:True
发布于 2020-03-29 08:09:22
字符串使用.replace()函数
https://stackoverflow.com/questions/60911551
复制相似问题