我正在编写一个脚本,该脚本从文件夹中的多个Excel工作簿中提取某些数据行(关键表在每个工作簿中都具有相同的名称)。此代码似乎只处理/打印文件夹中第一个文件的结果:
import os
import xlrd
for root, dirs, files in os.walk('/Users/123/Desktop/drivingtests'):
xlsfiles=[ _ for _ in files if _.endswith('.xlsx') ]
for xlsfile in xlsfiles:
workbook = xlrd.open_workbook(os.path.join(root,xlsfile))
worksheet = workbook.sheet_by_name('Sheet1')
for row in range(worksheet.nrows):
workbook = xlrd.open_workbook(os.path.join(root,xlsfile))
worksheet = workbook.sheet_by_name('Sheet1')
if worksheet.row_values(row)[0] == 'bike':
print worksheet.row_values(row)
如何让脚本处理文件夹中的每个工作簿?
答案 0 :(得分:1)
答案是“凹痕很重要”。当像下面的代码一样缩进时,它会循环遍历文件夹中的所有文件。
%'Initial data'
A = [1 2 3; 8 5 6];
B = [1 4 5; 7 4 8];
%'Look in merged data'
V = sort([A,B],2); %'Sort matrix values in rows'
R = V(diff(V,1,2)==0); %'Find duplicates in rows'