【发布时间】:2020-07-08 13:58:32
【问题描述】:
我正在编写一个脚本,它将在列表all_files 中搜索模式文件(在列表req_text 中提到)。如果在列表all_files 中找到该模式的文件,则返回True,否则返回false
我正在尝试使用变量 f 返回所有文件,但它只返回 1 个文件,而不是列表 req_text 中提到的所有文件
代码:
all_files = ['amc_20200304.txt', 'hello.py', 'pmc_20190807.txt', 'pmc_20200304.txt', 'pmc_20304.txt']
req_text = ['pmc_20304', 'abc']
# checking for files to be available
def file_check():
all_files = os.listdir(dir)
for r in req_text:
found = False
for f in all_files:
if r in f:
found = True
break
if not found:
return False
return f, True
# polling to check if file exists or not
def poll_file_check():
result = file_check()
print(result)
输出:
result = ('abc.txt', True)
预期输出:返回所有文件以及另一个变量True
result = [('abc.txt', pmc_20304.txt), True)]
任何帮助将不胜感激,我如何从变量 result 而不是 True 获取仅文件列表
【问题讨论】:
-
首先你需要
true or false在那个函数中是returned吗?您可以简单地将result存储为list的files-found,然后在任何需要的地方检查len(result)true or false -
你想要Live-Demo?
标签: python python-3.x file