我在Python中使用gspread时出现错误
我在尝试使用worksheet.update的时候遇到了一个错误。
我想更新B2和C2这两个单元格,但结果却出现了这个错误。
{'code': 400, 'message': 'Requested writing within range [Sheet1!B2:C2], but tried writing to row [3]', 'status': 'INVALID_ARGUMENT'}
这是我的代码
if sem == "Sem 1":
sh.update('B2:C2', [[str(gpa)], [str(unWeightedgpa)]])
如果用的单元格字母相同,它就能正常工作。比如说,如果是A1:A2。
1 个回答
0
我觉得你的目标是这样的。
- 你想用 gspread 把
[[str(gpa)], [str(unWeightedgpa)]]
的值放到 "B2:C2" 这个单元格里。
在这种情况下,试试下面的修改吧。
原来的代码:
sh.update('B2:C2', [[str(gpa)], [str(unWeightedgpa)]])
修改后的代码:
sh.update(values=[[str(gpa)], [str(unWeightedgpa)]], range_name='B2')
- 当这个脚本用一个有效的
sh
值运行时,[[str(gpa)], [str(unWeightedgpa)]]
的值会被放到 "B2:C2"。
注意:
- 在使用这个脚本之前,请确认你的 gspread 版本。现在的版本似乎是 v6.0.2。如果你的 gspread 版本比较旧,请更新一下,然后再测试。