使用 openpyxl 库时,用for循环读取表格
例:for i in sheet['A1:D20'] :
data = i.value
用for循环可以读取多个表格内容,那么用for循环怎么读取sheet.cell的多个表格内容?
for i in sheet.cell(row=??, column=??):
data = i.value
这里个cell里面row,column应该怎么写才能做sheet['A1':'D20']的效果?
res=sheet.cell(1,1).value #取到第一行第一列的值
print("最大行:{0}".format(sheet.max_row)) #表单的最大行
print("最大列:{0}".format(sheet.max_column)) #表单的最大列
详细代码:
from openpyxl import load_workbook #导入openpyxl
#处理Excel
class doExcel:
def __init__(self,file_name,sheet_name):
self.filename=file_name
self.sheetname=sheet_name
#获取Excel中的方法
def get_data(self):
wb = load_workbook(self.filename) #打开Excel
sheet = wb[self.sheetname] #定位表单
test_data= [] #创建一个空列表
for row in range(2, sheet.max_row + 1):
sub_data = {}
for column in range(1, sheet.max_column + 1):
sub_data[sheet.cell(1, column).value] = sheet.cell(row, column).value #Excel的第一行数据作为字典的key;
test_data.append(sub_data) #将每行的数据循环加到列表中
return test_data
if __name__ == '__main__':
res=doExcel("testcase.xlsx","case1").get_data()
print(res)