New submission from Mallow:

I'm not sure if this is a bug or not but I've noticed a behavior that seems 
incorrect.

The use of raw strings, when used for directory paths ending with a back slash 
(/) creates a syntax error.

How to reproduce
----------------

Code:

print (r"C:\path\to\a\dir\" + "file.ext")

Result: Syntax Error

Why is this an error, (in my perspective)
-----------------------------------------

One could attempt to be storing the directory information in a variable to 
write to file that is composed later but would be forced to use a cumbersome 
normal string having to escape all backslashes.

Example:

outputdir = r"C:\path\to\dir\"
filename = r"file.ext"
writetofile(outputdir + filename)

Argument for why the workaround is not a fix
--------------------------------------------

I believe I read somewhere that python is smart enough to deal with filepaths 
correctly on linux and windows if you were to switch the slashes. So 
technically 
outputdir = r"C:/path/to/dir/" 
would work
however this is hard on the workflow since I find it easier to copy and paste 
paths within windows.

I guess it wouldn't be too unreasonable to do something like:
r"C:\path\to\dir/"

----------
files: Capture.PNG
messages: 280057
nosy: princemallow
priority: normal
severity: normal
status: open
title: Syntax error when using raw strings ending with a backslash.
type: compile error
versions: Python 3.5
Added file: http://bugs.python.org/file45352/Capture.PNG

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue28611>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to