如何解除反斜杠转义的字符串?假设我有一个字符串,它是另一个字符串的反斜杠转义版本。有没有一种简单的方法,在Python中,unescape字符串?例如,我可以这样做:>>> escaped_str = '"Hello,\\nworld!"'>>> raw_str = eval(escaped_str)>>> print raw_strHello,world!>>>但是,这涉及将(可能不受信任的)字符串传递给eval(),这是一个安全风险。标准库中是否有一个函数,它接受一个字符串并产生一个没有安全隐患的字符串?
3 回答
浮云间
TA贡献1829条经验 获得超4个赞
在python 3中,str对象没有decode方法,你必须使用一个bytes对象。ChristopheD的答案涵盖了python 2。
# create a `bytes` object from a `str`
my_str = "Hello,\\nworld"
# (pick an encoding suitable for your str, e.g. 'latin1')
my_bytes = my_str.encode("utf-8")
# or directly
my_bytes = b"Hello,\\nworld"
print(my_bytes.decode("unicode_escape"))
# "Hello,
# world"
添加回答
举报
0/150
提交
取消