打印字符串中的所有字符

Est*_*Lin 3 python string

有没有办法打印python中的所有字符,即使是那些通常不打印的字符?

例如

>>>print_all("skip
 line")
skip\nline
Run Code Online (Sandbox Code Playgroud)

cri*_*007 5

看起来像你想要的 repr()

>>> """skip
... line"""
'skip\nline'
>>>
>>> print(repr("""skip
... line"""))
'skip\nline'
>>> print(repr("skip    line"))
'skip\tline
Run Code Online (Sandbox Code Playgroud)

所以,你的功能可能是

print_all = lambda s: print(repr(s))
Run Code Online (Sandbox Code Playgroud)

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


Jim*_*ard 1

更简单的是,通过使用将其转换为原始字符串"%r",原始字符串将反斜杠视为文字字符:

print("%r" % """skip
line""")
skip\nline
Run Code Online (Sandbox Code Playgroud)

此外,!rformat通话中使用:

print("{0!r}".format("""skip
line"""))
Run Code Online (Sandbox Code Playgroud)

以获得类似的结果。