反斜杠通常用于转义特殊字符串。例如:
>>> print "hi\nbye"
hi
bye
告诉 Python 不要将斜杠算作特殊通常就像使用“原始”字符串一样简单,可以将其写为字符串字面量 https://docs.python.org/2/reference/lexical_analysis.html#string-literals在字符串前面加上字母“r”。
>>> print r"hi\nbye"
hi\nbye
然而,即使是原始字符串也不能以奇数个反斜杠结尾。这使得字符串连接变得困难。
>>> print "hi" + r"\" + "bye"
File "<stdin>", line 1
print "hi" + r"\" + "bye"
^
SyntaxError: invalid syntax
有几种方法可以解决这个问题。最简单的是使用字符串格式:
>>> print r'{}\{}'.format('hi', 'bye')
hi\bye
另一种方法是在常规字符串中使用双反斜杠来将第二个反斜杠与第一个反斜杠转义:
>>> print 'hi' + '\\' + 'bye'
hi\bye
但所有这些都假设您面临使用反斜杠的合理需要。如果您想要做的只是构造 Windows 路径表达式,只需使用os.path.join
.