[issue28611] Syntax error when using raw strings ending with a backslash.
Ned Deily
report at bugs.python.org
Fri Nov 4 12:43:37 EDT 2016
Ned Deily added the comment:
To expand a bit, the "Python Language Reference" section on "String and Byte Literals" explains:
"Even in a raw literal, quotes can be escaped with a backslash, but the backslash remains in the result; for example, r"\"" is a valid string literal consisting of two characters: a backslash and a double quote; r"\" is not a valid string literal (even a raw string cannot end in an odd number of backslashes). Specifically, a raw literal cannot end in a single backslash (since the backslash would escape the following quote character). Note also that a single backslash followed by a newline is interpreted as those two characters as part of the literal, not as a line continuation."
https://docs.python.org/3/reference/lexical_analysis.html#string-and-bytes-literals
Because of the difference between Posix- and Windows-style paths and the potential conflicts in the use of `\` (such as you ran into), Python provides the older os.path and the newer pathlib modules, both of which allow you to deal with path manipulations in a more platform-independent manner.
https://docs.python.org/dev/library/pathlib.html
https://docs.python.org/dev/library/os.path.html
----------
nosy: +ned.deily
_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue28611>
_______________________________________
More information about the Python-bugs-list
mailing list