In <[EMAIL PROTECTED]>, Gigs_ wrote:

> import fnmatch, os
> 
> def find(pattern, startdir=os.curdir):
>      matches = []
>      os.path.walk(startdir, findvisitor, (matches, pattern))
>      matches.sort()
>      return matches
> 
> def findvisitor((matches, pattern), thisdir, nameshere):  #
>      for name in nameshere:
>          if fnmatch.fnmatch(name, pattern):
>              fullpath = os.path.join(thisdir, name)
>              matches.append(fullpath)
> 
> can someone explain why (matches, pattern) is doing in this two funct?

It's the first argument to `findvisitor()` which is invoked for every
directory level by `os.path.walk()`.  `findvisitor()` adds all file names
that match `pattern` to the `matches` list.

Ciao,
        Marc 'BlackJack' Rintsch
-- 
http://mail.python.org/mailman/listinfo/python-list
  • find.find Gigs_
    • Re: find.find Marc 'BlackJack' Rintsch

Reply via email to