New submission from Barry <python-b...@qsv.ca>:

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 <rep...@bugs.python.org>
<https://bugs.python.org/issue31929>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to