大家好,这是我最近第一次尝试进入 Python 的文件和操作系统部分。我正在尝试搜索一个目录,然后找到所有子目录。如果目录没有文件夹,请将所有文件添加到列表中。并按 dict 组织它们。
例如,一棵树可能看起来像这样
- 起始路径
- 目录 1
- 子目录 1
- 子目录 2
- 子目录 3
- 子目录
- 文件.jpg
- 文件夹1
- 文件1.jpg
- 文件2.jpg
- 文件夹2
- 文件3.jpg
- 文件4.jpg
- 子目录
- 目录 1
即使 subsubdir 中有一个文件,也应该跳过它,因为它里面有文件夹。
现在,如果我知道要查找多少个目录,我通常可以使用 os.listdir 和 os.path.isdir 执行此操作。但是,如果我希望它是动态的,它将必须补偿任何数量的文件夹和子文件夹。我曾尝试使用 os.walk,它会轻松找到所有文件。我遇到的唯一麻烦是使用包含文件的路径名创建所有字典。我需要由 dict 组织的文件夹名称,直到起始路径。
所以最后,使用上面的例子,字典应该看起来像这样,里面有文件:
dict['dir1']['subdir3']['subsubdir']['folder1'] = ['file1.jpg', 'file2.jpg']
dict['dir1']['subdir3']['subsubdir']['folder2'] = ['file3.jpg', 'file4.jpg']
将不胜感激任何帮助或组织信息的更好的想法。谢谢。