我得到一份暑期工作的公司具有扩展的测试数据库,该数据库包含每个项目越来越多的子文件夹,其中包括从.jpeg文件到我感兴趣的.xlsx的所有内容。以前对Python有点习惯,所以我决定尝试一下。我想搜索标题中包含“测试电子表格”的exceldocument(例如,“测试电子表格model259”)。我感兴趣的所有文档都以相同的方式构建(权重始终为“ A3”等),看起来有点像这样:Model: 259 Lenght: meters 27Weight: kg 2500Speed: m/s 25我希望完成程序的用户能够使用我的脚本将不同测试的结果相互比较。这意味着脚本必须立即查看是否存在同时符合两个条件的x值:inputlength = x*length of model 259inputweight = x*weight of model 259该程序应循环浏览主文件夹中的所有文件。如果模型存在这样的X,我希望程序将其返回到拟合模型列表。x值将是一个变量,每个模型都不同。结果,我想要一个适合输入的所有文件的列表,它们的scale(x-value)以及可能指向文件的链接。例如:Model scale LinkModelA 21.1 link_to_fileAModelB 0.78 link_to_fileB脚本 到目前为止,我一直在尝试使用的脚本如下,但是如果您对如何处理任务有其他建议,我会很乐意接受。不要害怕问我对任务的解释不够充分。XLRD已经安装,并且我使用Eclipse作为我的IDE。我一直在尝试使其以多种方式工作,因此我的大部分脚本仅用于测试。编辑:#-*- coding: utf-8 -*-#Accepts norwegian lettersimport xlrd, os, fnmatchfolder = 'C:\eclipse\TST-folder' def excelfiles(pattern): file_list = [] for root, dirs, files in os.walk(start_dir): for filename in files: if fnmatch.fnmatch(filename.lower(), pattern): if filename.endswith(".xls") or filename.endswith(".xlsx") or filename.endswith(".xlsm"): file_list.append(os.path.join(root, filename)) return file_listfile_list = excelfiles('*tst*') # only accept docs hwom title includes tstprint excelfiles() 返回值后打印excelfiles()时,我只得到一个结果,但是当我将“ return os.path.join(filename)”与“ print os.path.join(filename)”交换时,它显示全部。 xls文件?这是否意味着excelfiles函数的结果未传递?
添加回答
举报
0/150
提交
取消