This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: Raw strings create syntax error when last character is a single backslash
Type: compile error Stage: resolved
Components: Interpreter Core Versions: Python 3.5, Python 2.7
process
Status: closed Resolution: not a bug
Dependencies: Superseder:
Assigned To: Nosy List: barry, mezzzmer
Priority: normal Keywords:

Created on 2017-11-02 21:27 by mezzzmer, last changed 2022-04-11 14:58 by admin. This issue is now closed.

Messages (2)
msg305448 - (view) Author: Barry (mezzzmer) Date: 2017-11-02 21:27
Raw strings create syntax error when last character is a backslash (\).  
This problem seems to exist across all versions of python (that I have access to)

Sample Code:
-------------------------------------------------------------
Under Windows Python 2.7.3
Works Correctly:
>>> test = r'C:\Program Files\^%(x86)\Internet Explorer\iexplore.exe'
>>> print test
C:\Program Files\^%(x86)\Internet Explorer\iexplore.exe

Fails because last character is backslash
>>> test = r'C:\Program Files\^%(x86)\Internet Explorer\'
SyntaxError: EOL while scanning string literal
-------------------------------------------------------------
Under Linux Python 2.7.12
Works Correctly
>>> j=r"\n"
>>> print j
\n

Fails because last character is backslash
>>> j=r"n\"
SyntaxError: EOL while scanning string literal

Works correctly:
>>> j=r"n\n"
>>> print j
n\n

Works correctly:
>>> j=r"n\\"
>>> print j
n\\
-------------------------------------------------------------
Under Linux Python 3.5.2
Fails because last character is backslash
>>> j=r"\'
  File "<stdin>", line 1
    j=r"\'
         ^
SyntaxError: EOL while scanning string literal
-------------------------------------------------------------
msg305450 - (view) Author: Barry A. Warsaw (barry) * (Python committer) Date: 2017-11-02 21:33
This is defined behavior, not a bug.  See the end of the section on string literals: https://docs.python.org/3/reference/lexical_analysis.html#string-and-bytes-literals
History
Date User Action Args
2022-04-11 14:58:54adminsetgithub: 76110
2017-11-02 21:33:20barrysetstatus: open -> closed

nosy: + barry
messages: + msg305450

resolution: not a bug
stage: resolved
2017-11-02 21:27:46mezzzmercreate