用循环openpyxl iter_rows(min_row,max_row)

为什么iter_rows总是说must be str, not int ? 我只是试图把我的第一个值min_rowmax_row

 from openpyxl import load_workbook from itertools import islice wb = load_workbook('xyz.xlsx') ws1 = wb['Sheet1'] lst = ['2','2'] limit = 2 for i in islice(lst,limit): row = ws1.iter_rows(min_row=i,max_row=i) 

我试着在这里finditer_rows min_row max_row铸造的想法,但是,我只是得到相同的错误和Worksheet object has no attribute

引用错误是

  line 509, in iter_rows max_row += row_offset 

iter_rows方法期望min_rowmax_rowinput参数是整数。 所以试试这个:

 from openpyxl import load_workbook from itertools import islice wb = load_workbook('xyz.xlsx') ws1 = wb['Sheet1'] lst = [2,2] limit = 2 for i in islice(lst,limit): row = ws1.iter_rows(min_row=i,max_row=i) 

注意 :通过使用命令help(ws1.iter_rows)help(openpyxl.worksheet.worksheet.Worksheet.iter_rows)查询文档string,您可以获得iter_rows方法的完整使用说明。 在文档string中,您可以find说明:

 :param min_row: smallest row index (1-based index) :type min_row: int :param max_row: smallest row index (1-based index) :type max_row: int