确定,
我有两个字符串"Hello\nWorld!"
和Hello\\nWorld!
。我必须比较那些\n
和\\n
等于的方式。
这不难。我只是string1.replace("\n", "\\n")
。
但是如果我必须为包括unicode转义在内的所有转义字符做正确的事情,那么手动替换不是一种选择。
更新
Exaple案例:
我从文件Hello\nWorld!
读取(如在编辑器中打开文件时所见)。 Python会看到Hello\\nWorld!
我想比较最后一个与第一个相同的方式。
答案 0 :(得分:9)
如何使用unicode_escape
编码?
>>> 'hello\r\n'.encode('unicode_escape') == 'hello\\r\\n'
True
>>> 'hello\r\n' == 'hello\\r\\n'.decode('unicode_escape')
True
在Python 3.x中,您需要对字符串/字节进行编码/解码:
>>> 'hello\r\n'.encode('unicode_escape').decode() == 'hello\\r\\n'
True
>>> 'hello\r\n' == 'hello\\r\\n'.encode().decode('unicode_escape')
True