An equivalent of os.path.walk(), but without callback function.
1 2 3 4 5 6 7 8 9 10 11 12 13 | import os, os.path
startDir = "/"
directories = [startDir]
while len(directories)>0:
directory = directories.pop()
for name in os.listdir(directory):
fullpath = os.path.join(directory,name)
if os.path.isfile(fullpath):
print fullpath # That's a file. Do something with it.
elif os.path.isdir(fullpath):
directories.append(fullpath) # It's a directory, store it.
|
A simple directory walker, without the burden of creating a callback for os.path.walk().
This is also usefull for incremental directory walking (where you want to scan remaining directories in subsequent calls).
Tags: files
os.walk() is currently preferred and non-recursive. As of Python 2.3 the os.walk() function does much the same thing and allows for selectivly choosing which directories are examined. See http://python.org/doc/2.4.1/lib/os-file-dir.html#l2h-1636
Oh... that's right. Thanks for pointing that.
good