假设我有一个Python 3.2中的字符串,像这样:
'\n'
当我将其打印到控制台时,它会显示为一个新行。显然,我想要的是能够字面上打印出反斜杠后跟着n。此外,我需要对所有转义字符进行这样的操作,例如\t。因此,我正在寻找一个名为unescape()的函数,通常情况下,它应该按照以下方式工作:
>>> s = '\n\t'
>>> print(unescape(s))
'\\n\\t'
在Python中,是否可以不构建转义字符到字面替换的字典来实现此操作?
(如果有人感兴趣,我之所以这样做是因为我需要将字符串传递给命令行上的外部程序。该程序理解所有标准转义序列。)
\n
等等...没有任何问题。也就是说,如果你在将数据传递到第二个程序后打印它,你会看到\n
仍然存在。除非你真的想要转义它。但首先检查一下,如果你只是在第二个程序中删除额外的\
,那么你可能做错了。 - Endophagemyutility -i \n
如果我不对字符串进行反转义,那么它将永远看不到传递给它的\n - 它会认为-i是一个空参数。 - Mike Chamberlain