Alan Gauld wrote: >> I created a function that takes a pattern and a base >> path and then uses os.walk and glob to traverse >> directories starting from the base path and place >> files that match the glob pattern in a dictionary. >> > > I'm not sure why you are traversing the paths a second time. > Why not just apply glob within the os.walk traversal? > After all you are putting the path into the path list, then > iterating over that list later, why not just apply glob the > first time around?
Alternately you could use fnmatch.fnmatch() to filter the list of files received from os.walk(). Then you wouldn't be using glob() but fnmatch() is the file-name-matching part of glob(). A list comprehension would be good for this: matchedFiles = [ f for f in files if fnmatch(f, pattern) ] I think your whole program can be written in about six lines, but I'll let you puzzle it a bit rather than showing you. Kent _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor