我有一个文件系统,希望能够使用Python进行检查和更新。我的解决方案是使用os.walk,但它无法满足我的需求和文件系统的要求。目录布局如下:
Root
dir1
subdir
1
2
3...
file1
file2
dir2
subdir
1
2
3...
file1
file2
...
主目录的名称不同,因此为“dir1”和“dir2”,但是这些目录中的子目录具有相同的名称并包含许多不同的文件和目录。子目录是我想要从os.walk中排除的,因为它们会增加不必要的计算。
是否存在一种基于目录名称而不是路径来从os.walk中排除目录的方法,或者我需要做其他事情?
for
循环内遵守命名约定,因为这样很有意义。我创建了一个类似的基于路径的过滤器:https://dev59.com/XW435IYBdhLWcg3w6EmF#51871627 - JayRizzoclear()
(例如:if len(filenames)>0: dirnames.clear()
)。请注意,如果你给dirnames
赋值,例如dirnames = []
,这将无效,因为解释器将创建另一个临时变量,并将其忽略。 - Nir