On Mon, 10 Sep 2012 15:22:05 -0700, ruck wrote: > On Monday, September 10, 2012 1:16:13 PM UTC-7, Steven D'Aprano wrote: [...] > > That's not so much a workaround as the officially supported API for > > dealing with the situation you are in. Why don't you just prepend a > > '?' to paths like they tell you to? > > Good idea, but the first thing os.walk() does is a listdir(), and > os.listdir() does not like the r'\\?\' prefix. In other words, > os.walk(r'\\?\C:Users\john\Desktop\sandbox\goo') does not work.
Now that sounds like a bug to me. If Microsoft officially support leading ? in file names, then so should Python on Windows. > Also, your recipe worked for me -- > I'm walking 'goo' which contains 'voo.../doo' Good for you. (Sorry, that comes across as more condescending than it is intended as.) Monkey-patching often gets used for quick scripts and tiny pieces of code because it works. Just beware that if you extend that technique to larger bodies of code, say when using a large framework, or multiple libraries, your experience may not be quite so good. Especially if *they* are monkey-patching too, as some very large frameworks sometimes do. (Or so I am lead to believe.) The point is not that monkey-patching is dangerous and should never be used, but that it is risky and should be used with caution. -- Steven -- http://mail.python.org/mailman/listinfo/python-list