gpt4 book ai didi

python - 使用 Python 3.2 取消转义字符串中的转义字符

转载 作者:太空狗 更新时间:2023-10-29 22:05:57 24 4
gpt4 key购买 nike

假设我在 Python 3.2 中有一个这样的字符串:

'\n'

当我将它 print() 到控制台时,它显然显示为一个新行。我想要的是能够按字面意思将其打印为反斜杠后跟 n。此外,我需要对所有转义字符执行此操作,例如\t。所以我正在寻找一个函数 unescape(),对于一般情况,它的工作方式如下:

>>> s = '\n\t'
>>> print(unescape(s))
'\\n\\t'

这在 Python 中是否可行,而无需构建转义字符字典以替换其文字?

(万一有人感兴趣,我这样做的原因是因为我需要在命令行上将字符串传递给外部程序。这个程序理解所有标准的转义序列。)

最佳答案

要防止在文字字符串中对 \ 进行特殊处理,您可以使用 r 前缀:

s = r'\n'
print(s)
# -> \n

如果您有一个包含换行符 (ord(s) == 10) 的字符串,并且您希望将其转换为适合作为 Python 文字的形式:

s = '\n'
s = s.encode('unicode-escape').decode()
print(s)
# -> \n

关于python - 使用 Python 3.2 取消转义字符串中的转义字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9339630/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com