python - 如何跳过 Excel 工作表的前几行?

标签 python openpyxl import-from-excel

使用openpyxl我尝试从第五行读取一些文件。文件的前四行是标题。那么主要内容的格式与标题不同。我尝试了以下方法:

import openpyxl
file_name="xxx.xlsx"
wb = openpyxl.load_workbook(filename=file_name, use_iterators = True)
first_sheet = workbook.get_sheet_names()[0]
ws = workbook.get_sheet_by_name(first_sheet)

for index, row in enumerate(ws.iter_rows()):
    if start < index < stop:
        for c in row:
           print c.value

总是会出现错误:

IndexError: list index out of range

如果我删除前四行,数据可以很容易地读入Python。但我有数百个这样的文件,每个文件都有一个四行的标题。从文件中删除所有 header 将需要很长时间。

正确使用openpyxl阅读时如何跳过前几行?

最佳答案

您可以通过传递可选的 min_row 参数来跳过前 N 行。请注意,这使用 1 基索引,因此 min_row=2 从第二行开始,min_row=5 跳过前四行。你会使用这样的东西:

对于索引,枚举中的行(ws.iter_rows(min_row=5)):

Full iter_rows documentation.

关于python - 如何跳过 Excel 工作表的前几行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28929310/

相关文章:

python - 在 Python 的 openpyxl 中用颜色填充行 Excel

R - 导入和合并多个 Excel 文件并添加文件源变量

python - 使用 argparser 将参数传递给入口点 python 脚本

python - Pandas - 操作系列和延迟

python - 如何读取在 Django 中上传的 xlsx 文件?

java - 使用 POI 从 Excel 工作表的下一行获取值

c# - 从 Excel 导入数据到 SQL Server,无法保存为小数数据类型

Python - 如何将父子转换为嵌套字典

python - neo4j中节点之间的循环关系

python - 使用 openpyxl 插入列