我想使用python将数据写入google工作表。现在我已经做了以下事情来实现这个目标:
gc = gspread.authorize(credentials)
sh = gc.open('test')
worksheet = sh.worksheet('Sheet1')
cell_list = []
cell_data = []
for e in range(len(scholar_key)):
cell_list.append('B' + str(e))
for d in scholar_key:
cell_data.append(d['titel'])
cell_range = worksheet.range(cell_list[1]+ ":" +cell_list[-1])
for i in cell_range:
i.value = cell_data[i]
worksheet.update_cells(cell_range)
但是我一直收到以下错误:第28行TypeError: list indices must be integers, not Cell
(这是i.value = cell_data [i]的行)。我究竟做错了什么?另一个问题是如何递增计数器,因为现在索引从0开始并计数到19.但是,我希望计数器从1开始并计数到20(对于列,因此我只在data_list中有值数组范围从B1到B20)。
答案 0 :(得分:2)
在此循环中,i
将是Cell
而非数字索引
for i in cell_range:
i.value = cell_data[i]
你可以使用类似的东西
for index, cell in enumerate(cell_range):
cell.value = cell_data[index]