在Google中,我有一个python任务,它遍历并从一个模板复制一个公式,并通过指定一个键将其粘贴到其他所有工作表中。键的列表大约有1000个键长,更新速度非常慢。
现在,我可以手动分割列表,并同时运行10次代码,这样我就有10个并行实例一次全部更新。但有没有办法避免手工操作呢?这是代码
def copy_formula(self,source_key,target_key,sheetname,ranges):
sh = self.gsheets.gc.open_by_key(source_key)
wks= sh.worksheet(sheetname)
cell_list = wks.range(ranges)
sh1 = self.gsheets.gc.open_by_key(target_key)
wks1= sh1.worksheet(sheetname)
cell_list1 = wks1.range(ranges)
for i in range(0,len(cell_list1)):
cell_list1[i].value=cell_list[i].input_value
wks1.update_cells(cell_list1)gsheets来自gspread
发布于 2017-02-05 15:19:13
我认为您可能想要查看多处理,正如讨论过的这里,但我要提醒的是,同时调用谷歌可能是棘手的。即使使用较新的Google v4 (它的扩展可能还不起作用),也有在追加数据时,至少有一个记录在案的并发问题。
话虽如此,Google显然确实支持web中的并发编辑(包括多个用户),所以如果您想不出什么办法(可能是借助盖片,一个更新的Google的新Python包装器),我会感到惊讶。
https://stackoverflow.com/questions/42036613
复制相似问题