我有一个文件夹,有5个不同年份的子文件夹(1956年,1976年,1987年,2001年,2005年)。有没有办法使用walk函数从5个子文件夹中的每个子文件夹中搜索文件名的一部分,即Irrigated_Parcels.txt而不是Irrigated_Parcels_1956.txt?我从下面的脚本开始。
import os
def find(name, path):
for root, dirs, files in os.walk(path):
if name in files:
return os.path.join(root, name)
find('*.txt', '/path/to/dir')
答案 0 :(得分:0)
您可以使用' glob'
以下内容将返回所有符合' * .txt'的文件的路径列表。在每个子文件夹中
import glob
glob.glob('/path/to/dir/*/*.txt')
关于'发现'您已在问题中开始的脚本:请注意,函数只能返回一次,因此脚本将始终只返回匹配的第一个路径。
编辑:对于提出的问题的确切解决方案
glob.glob('/path/to/dir/*/Irrigated_Parcels.txt')
应该这样做。