Python 递归遍历目录结构
Author:lvmingyan
Email:lvmingyan86@yeah.net
def list_dir(path, res):
'''
res = {'dir':'root', 'child_dirs' : [] , 'files' : []}
print list_dir('/root', res)
'''
for i in os.listdir(path):
temp_dir = os.path.join(path,i)
if os.path.isdir(temp_dir):
temp = {'dir':temp_dir, 'child_dirs' : [] , 'files' : []}
res['child_dirs'].append(list_dir(temp_dir, temp))
else:
res['files'].append(i)
return res
def get_config_dirs():
res = {'dir':'root', 'child_dirs' : [] , 'files' : []}
return list_dir('d:/root',res)
print get_config_dirs()
>>
{
'files': [],
'child_dirs':
[
{
'files': [],
'child_dirs':
[
{
'files': ['aa.txt'],
'child_dirs':
[
{
'files': [],
'child_dirs': [],
'dir': 'd:/root\\a\\aa\\aaa'
}
],
'dir': 'd:/root\\a\\aa'
}
],
'dir': 'd:/root\\a'},
{
'files': [],
'child_dirs': [],
'dir': 'd:/root\\b'
}
],
'dir': 'd:/root'
}
分享到:
2011-11-14 19:41
浏览 4448
评论