我需要读取一个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
有没有不使用range函数的方法可以实现它?
我猜一个方法是:
for i in ws.iter_rows[1:]:
if i.row == startrow:
continue
print i[col['Time']].value.hour
if i.row == endrow:
break
但有没有更优雅的解决方案呢? (顺便说一下,那个也不起作用)