import os
def get_listings(directory):
parent, folder = os.path.split(directory)
listings = {
'folder': folder,
'children-files': [],
'children-folders': [],
}
children = os.listdir(directory)
for child in children:
child_path = os.path.join(directory, child)
if os.path.isdir(child_path):
listings['children-folders'] += [get_listings( child_path )]
else:
listings['children-files'] += [child]
return listings
directory = '/home/user/hello'
print(get_listings(directory))
输出为:
{
'folder': 'hello',
'children-files': ['a2', '1'],
'children-folders': [{
'folder': '002',
'children-files': [],
'children-folders': []
}, {
'folder': '001',
'children-files': ['1'],
'children-folders': [{
'folder': 'aaaa',
'children-files': ['321'],
'children-folders': []
}]
}]
}