使用工作表[#][#]查找单元格值时接收未找到单元格错误

2024-10-01 15:48:51 发布

您现在位置:Python中文网/ 问答频道 /正文

当试图通过工作表[#][#]访问前90个单元格以外的单元格时,我收到pygsheets.exceptions.CellNotFound未找到有3000个单元格的工作表出错。你知道吗

我已经运行了一个find来查找所有具有某个值的单元格,我需要使用该值作为从相邻单元格检索数据的引用。浏览生成的列表,我可以看到包含标识符的所有单元格。由于不知道要使用的其他方法,我使用工作表[row][column],使用单元格列表索引作为引用来查找要检索的数据的相邻单元格。当我到达90范围内的单元格时,脚本在“未找到单元格”错误中失败。我尝试过直接引用超过这个90范围的任何单元格,但收到的都是相同的错误。你知道吗

这个发现是必要的,因为被检索的数据至少是“每13个单元格一次”,但是有些部分超出了这个限制,因此抛出了一个一致的迭代。你知道吗

for x in range(80, 90):
    print(wks[x][41])

错误发生在89

Traceback (most recent call last):
  File "<<filepath of .py script>>", line 88, in <module>
    print(wks[379][41])
  File "<<pygsheets filepath>>", line 1483, in __getitem__
    raise CellNotFound
pygsheets.exceptions.CellNotFound

pygsheets版本2.0.2通过PyCharm安装


Tags: 数据方法in列表错误line标识符find
1条回答
网友
1楼 · 发布于 2024-10-01 15:48:51

访问在wks[colum][row]之前,这在wks[row][column]的最新pygsheets更新中得到了解决。你知道吗

此外,这种访问类型没有针对循环进行优化,请考虑使用get_all_values获取值,然后循环。你知道吗

data = wks.get_all_values()
for x in range(80, 90):
    print(wks[x][41])

或者

col = wks.get_col(41)
for x in range(80, 90):
    print(col[x])

相关问题 更多 >

    热门问题