Good day, everybody! From what I can tell from the archives, this is everyone's favorite method from the standard lib, and everyone loves answering questions about it. Right? :)
Anyway, my question regards the way that the visit callback modifies the names list. Basically, my simple example is: ############################## def listUndottedDirs( d ): dots = re.compile( '\.' ) def visit( arg, dirname, names ): for f in names: if dots.match( f ): i = names.index( f ) del names[i] else: print "%s: %s" % ( dirname, f ) os.path.walk( d, visit, None ) ############################### Basically, I don't want to visit any hidden subdirs (this is a unix system), nor am I interested in dot-files. If I call the function like, "listUndottedDirs( '/usr/home/ardent' )", however, EVEN THOUGH IT IS REMOVING DOTTED DIRS AND FILES FROM names, it will recurse into the dotted directories; eg, if I have ".kde3/" in that directory, it will begin listing the contents of /usr/home/ardent/.kde3/ . Here's what the documentation says about this method: "The visit function may modify names to influence the set of directories visited below dirname, e.g. to avoid visiting certain parts of the tree. (The object referred to by names must be modified in place, using del or slice assignment.)" So... What am I missing? Any help would be greatly appreciated. -- Joe Ardent -- http://mail.python.org/mailman/listinfo/python-list