我需要读取 10x5324 个单元格的 xlsx 文件
这是我试图做的事情的要点:
from openpyxl import load_workbook
filename = 'file_path'
wb = load_workbook(filename)
ws = wb.get_sheet_by_name('LOG')
col = {'Time':0 ...}
for i in ws.columns[col['Time']][1:]:
print i.value.hour
代码运行时间太长了(我正在执行操作,而不是打印),过了一会儿我不耐烦了,取消了它。
知道如何在优化的阅读器中工作吗?我需要遍历一系列行,而不是所有行。这是我尝试过的,但它是错误的:
wb = load_workbook(filename, use_iterators = True)
ws = wb.get_sheet_by_name('LOG')
for i in ws.iter_rows[1:]:
print i[col['Time']].value.hour
没有范围功能有什么办法可以做到吗?
我想一种方法是:
for i in ws.iter_rows[1:]:
if i.row == startrow:
continue
print i[col['Time']].value.hour
if i.row == endrow:
break
但是有更优雅的解决方案吗?(顺便说一句,这也不起作用)