python - os.walk without digging into directories below -
how limit os.walk return files in directory provide it?
def _dir_list(self, dir_name, whitelist): outputlist = [] root, dirs, files in os.walk(dir_name): f in files: if os.path.splitext(f)[1] in whitelist: outputlist.append(os.path.join(root, f)) else: self._email_to_("ignore") return outputlist
use walklevel function.
import os def walklevel(some_dir, level=1): some_dir = some_dir.rstrip(os.path.sep) assert os.path.isdir(some_dir) num_sep = some_dir.count(os.path.sep) root, dirs, files in os.walk(some_dir): yield root, dirs, files num_sep_this = root.count(os.path.sep) if num_sep + level <= num_sep_this: del dirs[:] it works os.walk, can pass level parameter indicates how deep recursion go.
Comments
Post a Comment