【发布时间】:2021-06-09 14:47:05
【问题描述】:
我很难从预定列表中找到包含关键字的文件名。我设法从目录和子目录中找到所有文件,但是查找关键字不起作用。我想列出我目录中名称中包含关键字的所有文件:
path = ':O drive'
keywords = ['photo', 'passport', 'license']
files = [] # list of all files in directory
result = [] # list store our results
#list all files
for root, directories, file_path in os.walk(path, topdown=False):
for name in file_path:
files.append(os.path.join(root, name))
#find keywords in files
for filename in files:
for keyword in keywords:
if keyword in filename:
result[keyword].os.path.join(path, filename)
print(result)
【问题讨论】:
-
听起来您希望
result类似于defaultdict(list)而不是列表,然后您可以执行result[keyword].append(os.path.join(path,filename)) -
你能试试这个吗?
if keyword in str(filename)