上面的程序如果文件名的关键字有多个,要求同时具有这些关键字,过滤出文件名,如何?
时间: 2024-03-05 18:53:38 浏览: 59
运行程序所需文件多个关键字请用空格分隔,最多填写5个。点击右侧Tag快速添加
如果要过滤出文件名中包含多个关键字的文件,可以将文件名中每个关键字都与目标关键字进行比较,只有当所有关键字都匹配时才将该文件名添加到结果列表中。
以下是一个示例代码,它将过滤出文件名中包含所有指定关键字的文件,并将这些文件名存储在一个列表中:
```python
import os
def filter_filenames_with_keywords(directory, keywords):
matched_filenames = []
for filename in os.listdir(directory):
match_count = 0
for keyword in keywords:
if keyword in filename:
match_count += 1
if match_count == len(keywords):
matched_filenames.append(filename)
return matched_filenames
```
你可以调用这个函数来过滤出文件名中包含所有指定关键字的文件,例如:
```python
matched_filenames = filter_filenames_with_keywords("/path/to/directory", ["apple", "pie"])
print(matched_filenames)
```
这将打印出所有文件名中同时包含“apple”和“pie”关键字的文件名。请注意,`/path/to/directory` 应该替换为实际的目录路径。
阅读全文