Python 如何使用OpenPyXL在Excel电子表格中列出所有第一行值?

Python 如何使用OpenPyXL在Excel电子表格中列出所有第一行值?,python,openpyxl,Python,Openpyxl,在Python 3.5中使用OpenPyXL模块,我能够计算出电子表格中有多少列,包括: In [1]: sheet.max_column Out [1]: 4 然后,我能够列出4个单元格中每个单元格中的值,其中包括: In [2]: for rowOfCellObjects in sheet['A1':'D1']: for cellObj in rowOfCellObjects: print(cellObj.coordinate, ce

在Python 3.5中使用OpenPyXL模块,我能够计算出电子表格中有多少列,包括:

In [1]: sheet.max_column
Out [1]: 4
然后,我能够列出4个单元格中每个单元格中的值,其中包括:

In [2]: for rowOfCellObjects in sheet['A1':'D1']:
            for cellObj in rowOfCellObjects:
                print(cellObj.coordinate, cellObj.value)
Out [2]: A1 Dog, B1 Cat, C1 Hamster, D1 Bigger Dog
但是有没有办法跳过第一步,只列出x列数的值


如果我不知道有多少列,我就不会知道迭代['A1':'D1]。如果有200列,则计算['A1']之后的第200个字母/数字会浪费时间。

如果需要遍历文件的所有行或列,则可以使用openpyxl.worksheet.worksheet.rows属性或openpyxl.worksheet.worksheet.columns属性


请参阅。

编辑您的样本以获得所需内容。但不建议这样做

for rowOfCellObjects in sheet['A1':sheet.cell(row=1, column=sheet.max_column).coordinate]:
      for cellObj in rowOfCellObjects:
          print(cellObj.coordinate, cellObj.value)
使用以下示例之一:

Sampel1:Iter每行所有列,在第一行后中断

  for rows in ws.rows:
    for cell in rows:
      print('cell %s %s' % (cell.coordinate,cell.value))
    break
更多编程控制:

示例2:仅从min/max_行参数给定的行迭代所有列, 在一行之后结束

参数min/max_row可以指向任何行,甚至可以指向外部数据

  for rows in ws.iter_rows(min_row=1, max_row=1, min_col=1):
    for cell in rows:
      print('cell %s %s' % (cell.coordinate,cell.value))

*使用Python:3.4.2-openpyxl:2.4.1*进行了测试。

文档中介绍了这一点:链接已断开。请在帖子中包括相关信息,以及链接