Python3.7中用r''方法取消转义的语法错误
在Python3.7中,可以使用r''
方法对字符串取消默认转义。
比如:
#一般的字符串会将\n识别为换行
>>> print('ab\ncd')
ab
cd
#用r''方法取消默认转义之后,\n就被识别为字符\和字符n
>>> print(r'ab\ncd')
ab\ncd
但是,在使用这个方法时,如果字符串以单数个转义字符\
结束,则会产生语法错误。
错误示例:
#字符串以一个\结尾
>>> print(r'\')
File "<stdin>", line 1
print(r'\')
^
SyntaxError: EOL while scanning string literal
#两个
>>> print(r'\\')
\\
#三个
>>> print(r'\\\')
File "<stdin>", line 1
print(r'\\\')
^
SyntaxError: EOL while scanning string literal
#四个,与前面的字符没有关系
>>> print(r'abcd\\\\')
abcd\\\\