我知道这与有关反斜杠的许多其他问题类似,但这涉及到一个尚未解决的特定问题。是否有一种模式可以用来完全消除反斜杠作为打印语句中的转义字符?我需要对ascii艺术了解这一点,因为当所有反斜杠都必须加倍时,很难找到正确的位置。
print('''
/\\/\\/\\/\\/\\
\\/\\/\\/\\/\\/
''')
\```
Run Code Online (Sandbox Code Playgroud)
在字符串前加上r(我认为是“ raw”),它将按字面意义进行解释,而不用替换:
>>> # Your original
>>> print('''
... /\\/\\/\\/\\/\\
... \\/\\/\\/\\/\\/
... ''')
/\/\/\/\/\
\/\/\/\/\/
>>> # as a raw string instead
>>> print(r'''
... /\\/\\/\\/\\/\\
... \\/\\/\\/\\/\\/
... ''')
/\\/\\/\\/\\/\\
\\/\\/\\/\\/\\/
Run Code Online (Sandbox Code Playgroud)
这些通常用于正则表达式,在这种情况下,必须双转义反斜杠变得乏味。您还可以使用其他几个字母,包括f(对于格式字符串,它们的行为不同),b(文字bytes对象,而不是字符串)和u,它们用于在python 2中指定Unicode字符串,但我不这样做认为python 3有什么特别之处。