gpt4 book ai didi

python - 使用 openpyxl 解析列

转载 作者:行者123 更新时间:2023-11-30 23:42:53 24 4
gpt4 key购买 nike

我有以下算法来解析列中的整数值:

def getddr(ws):
address = []
col_name = 'C'
start_row = 4
end_row = ws.get_highest_row()+1

range_expr = "{col}{start_row}:{col}{end_row}".format(col=col_name, start_row=start_row, end_row=end_row)

for row in ws.iter_rows(range_string=range_expr):
print row
raw_input("enter to continue")
cell = row[0]
if str(cell.value).isdigit:
address.append(cell.value)
else:
continue

return address

这会在cell = row[0]处崩溃,并显示“IndexError:元组索引超出范围”,我不知道这意味着什么。我尝试打印出 row 来查看它包含的内容,但它给我的只是一组空括号。有人知道我错过了什么吗?

最佳答案

要说出您遇到的问题并不容易,因为没有您要处理的输入数据。

但我可以解释您遇到的错误的原因是什么,以及您必须朝哪个方向走。列表 row 包含 0 个元素 (row = []),因此您不能说 row[0] — 没有行[0]。您必须更改的第一件事是检查您的列表有多长,如果足够长,何时进行其他操作:

for row in ws.iter_rows(range_string=range_expr):
print row
raw_input("enter to continue")
if len(row) > 0:
cell = row[0]
if str(cell.value).isdigit:
address.append(cell.value)
else:
continue

无论如何,这是您必须执行的第一步。

关于python - 使用 openpyxl 解析列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11142577/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com