如何跳过 Excel 工作表的前几行?
Posted
技术标签:
【中文标题】如何跳过 Excel 工作表的前几行?【英文标题】:How can I skip first several lines of the Excel sheet? 【发布时间】:2015-03-08 17:06:20 【问题描述】:使用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: 列表索引超出范围
如果我删除前四行,数据可以很容易地读入 Python。但是我有数百个这样的文件,每个文件都有一个四行的标题。从文件中删除所有标题需要很长时间。
正确使用openpyxl
阅读时如何跳过前几行?
【问题讨论】:
【参考方案1】:您可以将范围传递给ws.iter_rows('A4:Z256')
,但最好使用ws.get_squared_range(1, 5,)
【讨论】:
【参考方案2】:您可以通过传递可选的min_row
参数来跳过第一行N
。请注意,这使用 1 基索引,因此 min_row=2
从第二行开始,min_row=5
跳过前四行。你会使用这样的东西:
for index, row in enumerate(ws.iter_rows(min_row=5)):
Full iter_rows
documentation.
【讨论】:
以上是关于如何跳过 Excel 工作表的前几行?的主要内容,如果未能解决你的问题,请参考以下文章
SqlSever基础 top 查看一个数据库的表的所有列的前几行
SqlSever基础 top 查看一个数据库的表的指定列的前几行