On Fri, Aug 15, 2008 at 6:17 PM, Angela Yang <[EMAIL PROTECTED]> wrote: > Hi Python gurus: > > Is os.popen("find") faster or slower than os.path.walk to find file pattern > in the > directory tree? I thought os.path.walk would be faster than unix find, but > that doesn't > seem to be the case?
In general a mature (i.e. optimized) C program is going to be faster than a Python program to do the same task. > What is the fastest way in python to search for a file with a given pattern > in a directory > tree? > > Here's the code using os.path.walk: os.path.walk() is more-or-less obsolete, os.walk() does the same job and is much easier to use. I don't know if it is any faster though. If I understand your code, you want to find every file named src.mk that is in a directory named src. With os.walk() it would look like this: for dirpath, dirnames, filenames in os.walk(component_dir): if dirpath.endswith('/src'): if 'src.mk' in filenames: walk_lst_result.append(os.path.join(dirpath, 'src.mk') # or just handle the file here, no need to make the list Kent _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor