python - 如何在列中搜索文本,然后使用该列使用 gspread 和 python 打印整行?
问题描述
这是我的代码示例。
cell_list = wks.find(input_ID)
print("Text found at R%sC%s" % (cell_list.row, cell_list.col))
get_row = int(("%s" % (cell_list.row)))
print(get_row)
searched_row = wks.row_value(get_row)
print(searched_row)
我得到的错误...
Text found at R5C5
5
Traceback (most recent call last):
File "d:/Users/Win81/Desktop/testing.py", line 18, in <module>
searched_row = wks.row_value(get_row)
AttributeError: 'Worksheet' object has no attribute 'row_value'
我意识到问题出在get_row。我在网上搜索过,所有的例子都在括号里放了一个数字。但是,我该怎么做呢?感谢您的帮助!
解决方案
您在尝试获取行值的行中有错字:
- 目前:
searched_row = wks.row_value(get_row)
- 应该:
searched_row = wks.row_values(get_row)
(注意复数row_values
...不是单数row_value
)
当我进行此更正时,您的代码在我设置用于复制您的问题的示例上运行良好:
(BEFORE THE TYPO FIX)
> python gspread-fix.py
Text found at R5C5
5
Traceback (most recent call last):
File "gspread-fix.py", line 20, in <module>
searched_row = wks.row_value(get_row)
AttributeError: 'Worksheet' object has no attribute 'row_value'
(AFTER THE TYPO FIX)
>python gspread-fix.py
Text found at R5C5
5
['y', 'z', '0', '1', '2', '3']
作为参考,这里是完整代码的副本,其中包含拼写错误修复和我用来测试和验证修复的 Google 表格的快照:
import gspread
gc = gspread.service_account()
# Open a sheet from a spreadsheet in one go
wks = gc.open("gspread-test").sheet1
input_ID = '2'
# original
cell_list = wks.find(input_ID)
print("Text found at R%sC%s" % (cell_list.row, cell_list.col))
get_row = int(("%s" % (cell_list.row)))
print(get_row)
searched_row = wks.row_values(get_row)
print(searched_row)
作为进一步的参考,如果其他人有兴趣开始使用 gspread,我发现这个快速验证运行非常有用:
推荐阅读
- r - R中的2-tile图像数组
- reactjs - 如何在 ASP.NET Core 项目中使用 Webpack React 项目
- javascript - 使用 promise 处理数据数组
- allennlp - 如何编写配置文件来告诉 AllenNLP 训练器将数据集随机拆分为训练和开发
- unity3d - 有没有办法在着色器中合并 Unity 中的纹理?
- visual-studio-code - 如何在 VS Code 中切换环境
- ruby-on-rails - 使用 mail_form freeze 发送电子邮件,没有错误 rails
- r - 在函数内,如果找不到 xpath,则返回 NA 或 0
- python - 如何在普通图像上粘贴半透明图像并获得透明度 PIL?
- composer-php - 在 laravel 8 中安装氩仪表板时找不到类“Laravel\Ui\UiCommand”