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