打印字符串中的所有字符

5
有没有一种方法可以在Python中打印所有字符,即使通常不打印的字符?
例如:
>>>print_all("skip
 line")
skip\nline

你的意思是打印出像 '\n''\r' 或者 '\s' 这样的字符吗? - Christian Dean
4
如果您想要的是文本的表示形式,可以尝试打印它的reprprint(repr("skip\nline")) - Vincent Savard
2个回答

8

看起来你想要使用repr()

>>> """skip
... line"""
'skip\nline'
>>>
>>> print(repr("""skip
... line"""))
'skip\nline'
>>> print(repr("skip    line"))
'skip\tline

所以,你的函数可以是:
print_all = lambda s: print(repr(s))

对于 Python 2,您需要添加 from __future__ import print_function


1
更简单的方法是,将其转换为原始字符串,只需使用"%r",原始字符串将反斜杠视为字面字符:
print("%r" % """skip
line""")
skip\nline

此句话的英译中文为:“此外,在格式调用中使用!r:”保留HTML,不做解释。
print("{0!r}".format("""skip
line"""))

用于获得相似的结果。


这对我来说更好,因为我不必浏览所有代码将我的“print”更改为“print()”。 - Ester Lin

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接