New submission from Barry <[email protected]>:
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
-------------------------------------------------------------
----------
components: Interpreter Core
messages: 305448
nosy: mezzzmer
priority: normal
severity: normal
status: open
title: Raw strings create syntax error when last character is a single backslash
type: compile error
versions: Python 2.7, Python 3.5
_______________________________________
Python tracker <[email protected]>
<https://bugs.python.org/issue31929>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com