我编写了这段代码,将XLS文件的内容保存到Python中的列表中:
import xlrd
file = "oktober-results.xls"
content = xlrd.open_workbook(file)
sheet = content.sheet_by_index(0)
sheet_to_list = []
for row in range (sheet.nrows):
sheet_to_list.append([])
for col in range (sheet.ncols):
sheet_to_list[row].append(sheet.cell_value(row, col))
此代码运行良好。最近,我被迫将Excel文件切换为XLSX格式,因为这样可以处理更多的行。
xlrd模块无法处理.xlsx文件,我决定改用openpyxl。
现在我正试图用Python将xlsx文件的内容保存到列表中,但我遇到了麻烦:
file = "november-results.xlsx"
content = openpyxl.load_workbook(file)
sheet = content.active
sheet_to_list = []
for rij in range (1, sheet.max_row +1):
sheet_to_list.append([])
for kol in range (1, sheet.max_column +1):
sheet_to_list[rij].append(sheet.cell(row=rij, column=kol)).value
有人能帮我吗?
它得到了下一个错误:
sheet_to_list[rij].append(sheet.cell(行=rij,列=kol((.value
IndexError:列出超出范围的索引
列表索引从0开始变量"rij";起始值是1,所以当您试图附加只有一个项目在0处索引的列表时,它会给您IndexError。你应该这样做:
sheet_to_list[rij-1].append(sheet.cell(row=rij, column=kol).value)