25 lines
645 B
Python
25 lines
645 B
Python
|
global os
|
||
|
import os
|
||
|
|
||
|
def _pathWalklevel(some_dir, level=0):
|
||
|
if level < 0:
|
||
|
for root, dirs, files in os.walk(some_dir):
|
||
|
yield root,dirs,files
|
||
|
|
||
|
return
|
||
|
|
||
|
some_dir = some_dir.rstrip(os.path.sep)
|
||
|
assert os.path.isdir(some_dir)
|
||
|
num_sep = some_dir.count(os.path.sep)
|
||
|
for 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[:]
|
||
|
opus.path.walklevel = _pathWalklevel
|
||
|
|
||
|
def _pathEasywalk(dir,depth = 0):
|
||
|
for root, dirs, files in opus.files.walklevel(dir,depth):
|
||
|
for file in files:
|
||
|
yield p(root,file)
|
||
|
opus.path.easywalk = _pathEasywalk
|