此代码有什么问题?我想在文件夹中找到一个特定的文件。谢谢你的帮助。
import os, fnmatch
def find(root, mask): //Error
files_list = os.listdir(os.path.abspath(root))
for filename in fnmatch.filter(files_list, mask):
yield filename
def test():
res = find ('D:\\Sample\\', 'hallo.txt')
test()
错误:
Error: Traceback (most recent call last): def find(root, mask): NoneType
答案 0 :(得分:1)
您的函数是generator,它将逐个生成文件名。如果您需要所有匹配项的列表,可以在list
上致电res
:
list_of_matches = list(res)
你的默认参数root=os.dir
也没有意义。也许使用'.'
?
答案 1 :(得分:0)
测试函数缺少某些缩进
def test ():
res = find ('D:\\Sample\\', 'hallo.txt')