On Mon, 19 Apr 2010 07:49:31 am Neven Goršić wrote: > Hi! > > When I get file path from DirDialog, I get in a (path) variable. > Sometimes that string (path) contains special escape sequences, such > as \x, \r and so on. > > 'C:\Python25\Programs\rating'
That creates a string containing a \r character, which is a carriage return. You could write it as a raw string r'C:\Python25\Programs\rating' but that will fail if the string ends with a backslash. Or you could escape your backslashes: 'C:\\Python25\\Programs\\rating' The best solution is to remember that Windows will accept either backslash or forward slash in paths, and so write: 'C:/Python25/Programs/rating' Another solution is to construct the path programmatically, e.g.: parts = ['C:', 'Python25', 'Programs', 'ratings'] path = '\\'.join(parts) but frankly I would consider any solution except "use forward slashes" to be a waste of time -- CPU time *and* programmer time. > When I try to open that file (whose name contains escape sequences) > it doesn't work. Only because the file doesn't exist. If you actually have a file called Programs\rating in the C:/Python25/ directory, you will open it. -- Steven D'Aprano _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: http://mail.python.org/mailman/listinfo/tutor