给出了一条路径,此路径包含
之类的子目录---- Folder1
---- Folder2
---- Folder3
etc.
我想从每个文件夹中提取第一个文件,并将其存储在列表中,并在可能的情况下从该文件夹中删除该文件。我知道如何通过使用OS.ListDir方法循环浏览文件夹和各个文件来执行此操作,但是此过程将所有文件加载到内存中。
考虑到每个文件夹中有大量文件,任何人都知道一种有效的方法或方法,可以通过文件夹循环并将每个子文件夹的第一个文件提取到列表中。?
您可以通过OS.WALK函数通过给定文件夹的所有子文件夹迭代。然后,您可以提取所需的每个第一个文件。这是第一个词典文件的示例:
import os
result_files = []
for root, dirs, files in os.walk(your_folder):
if files:
result_files.append(sorted(files)[0])
os.walk
中的每个元组包含:
- 当前文件夹名称
- 当前文件夹中的所有文件夹
- 当前文件夹中的所有文件