Doubled backslashes in Windows paths

Oz-in-DFW lists at ozindfw.net
Fri Oct 7 01:30:10 EDT 2016


I'm using Python 3.5.2 (v3.5.2:4def2a2901a5, Jun 25 2016, 22:01:18) [MSC
v.1900 32 bit (Intel)] on Windows 7

I'm trying to write some file processing that looks at file size,
extensions, and several other things and I'm having trouble getting a
reliably usable path to files.

The problem *seems* to be doubled backslashes in the path, but I've read
elsewhere that this is just an artifact of the way the interpreter
displays the strings.

I'm getting an error message on an os.path.getsize call;

    Path: -
    "C:\Users\Rich\Desktop\2B_Proc\2307e60da6451986dd8d23635b845386.jpg" -
    Traceback (most recent call last):
      File "C:\Users\Rich\workspace\PyTest\test.py", line 19, in <module>
        if os.path.getsize(path)>10000:
      File "C:\Python32\lib\genericpath.py", line 49, in getsize
        return os.stat(filename).st_size
    WindowsError: [Error 123] The filename, directory name, or volume
    label syntax is incorrect:
    '"C:\\Users\\Rich\\Desktop\\2B_Proc\\2307e60da6451986dd8d23635b845386.jpg"'

>From (snippet)

                path = '"'+dirpath+name+'"'
                path = os.path.normpath(path)
                print("Path: -",path,"-")
                if os.path.getsize(path)>10000:
                    print("Path: ",path," Size:
    ",os.path.getsize(dirpath+name))

but if I manually use a console window and cut and paste the path I
print, it works;

    C:\>dir
    "C:\Users\Rich\Desktop\2B_Proc\2307e60da6451986dd8d23635b845386.jpg"
     Volume in drive C is Windows7_OS

     Directory of C:\Users\Rich\Desktop\2B_Proc

    10/03/2016  08:35 AM            59,200
    2307e60da6451986dd8d23635b845386.jpg
                   1 File(s)         59,200 bytes
                   0 Dir(s)  115,857,260,544 bytes free

So the file is there and the path is correct. I'm adding quotes to the
path to deal with directories and filenames that have spaces in them. 
If I drop the quotes, everything works as I expect *until* I encounter
the first file/path with spaces.

I'll happily RTFM, but I need some hints as to which FM to R

-- 
mailto:oz at ozindfw.net    
Oz
POB 93167 
Southlake, TX 76092 (Near DFW Airport) 






More information about the Python-list mailing list