在Python中处理字符串中的转义序列
有时候,当我从文件或用户那里得到输入时,我会得到一个带有转义序列的字符串。我想以与Python处理字符串文字中的转义序列相同的方式来处理转义序列。
例如,假设myString定义为:
>>> myString = "spam\\neggs">>> print(myString)
spam\neggs
我想要一个process执行此操作的函数(我称之为):
>>> print(process(myString))spam
eggs
该函数可以处理Python中的所有转义序列(在上面的链接的表格中列出),这一点很重要。
Python是否具有执行此操作的功能?
回答:
正确的做法是使用“字符串转义”代码对字符串进行解码。
>>> myString = "spam\\neggs">>> decoded_string = bytes(myString, "utf-8").decode("unicode_escape") # python3
>>> decoded_string = myString.decode('string_escape') # python2
>>> print(decoded_string)
spam
eggs
不要使用AST或eval。使用字符串编解码器更加安全。
以上是 在Python中处理字符串中的转义序列 的全部内容, 来源链接: utcz.com/qa/411956.html