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 - [email protected]
http://mail.python.org/mailman/listinfo/tutor