我不知道如何用openpyxl迭代指定列中的所有行。
我要打印列"C"中所有行的所有单元格值
现在我有:
from openpyxl import workbook
path = 'C:/workbook.xlsx'
wb = load_workbook(filename = path)
ws=wb.get_sheet_by_name('Sheet3')
for row in ws.iter_rows():
for cell in row:
if column == 'C':
print cell.value
8条答案
按热度按时间nlejzf6q1#
为什么不能只迭代列'C'(版本2.4.7):
mzsu5hc02#
可以使用
ws.iter_rows()
指定要迭代的范围:编辑:根据您的注解,您希望单元格值在列表中:
osh3o9ms3#
你也可以这样做。
这样,您仍然在遍历行(而不是单元格),并且只从要打印的行的C列中提取值。
jckbn6z74#
上面的一些解决方案不是很好用(可能是因为'openpyxl'的最新版本)。在尝试了不同的方法后,我使用了这个:
打印所有行和所有列:
打印具有特定列的所有行(例如,“E”到“L”):
请记住以下几点:
***sheet[N]**给出第 * N * 行的'Cell'对象列表。(N是从1开始的数字)
oknrviil5#
它可以是:
9gm1akwq6#
我是这样做的,我不知道我在做什么,但是它确实避开了没有值的单元格。
bjg7j2ky7#
可以在单元格对象中使用坐标属性。
坐标属性包含字符串格式的单元格地址。
例如,
bsxbgnwa8#