将未转义的白色空间打印到外壳

时间:2011-10-12 18:09:17

标签: python escaping

考虑这行Python代码:

s = "This string has \n\r whitespace"

如何制作

print s

给我

This string has \n\r whitespace

而不是

This string has
whitespace

就像现在一样。

4 个答案:

答案 0 :(得分:17)

你想要一个原始字符串吗?

s = r"This string has \n\r whitespace"

或将特殊字符转换为它的表示?

repr(s)

答案 1 :(得分:8)

 print s.encode('string-escape')

答案 2 :(得分:2)

您需要repr功能。

print repr(s)

答案 3 :(得分:1)

您可以使用python的格式化功能以“raw”形式打印字符串:

print "%r" % s

你也可以用原始形式创建一个字符串,如下所示:

s = r'This string has \n\r whitespace'

并且Python将处理转义反斜杠,以便这就是你得到的:

print s # outputs "This string has \n\r whitespace"