在Python中将计数器连接到变量名

时间:2015-09-03 14:06:52

标签: python

是否可以做这样的事情?

for i in range(1,8):
    worksheet+i = gSheet.wks.get_worksheet(i)
    presentations = getActivity(query, getDate(i))
    exportToSheet(query, worksheet+i, presentations)

我需要将计数器与工作表联系起来,以便在每次循环时形成一个新的变量名。

目前给我这个错误:

  File "dagklapper.py", line 99
  worksheet+i = gSheet.wks.get_worksheet(i)
  SyntaxError: can't assign to operator

2 个答案:

答案 0 :(得分:4)

您显示的代码似乎根本不需要变量worksheet1worksheet8,您可以重复使用worksheet

for i in range(1, 8):
    worksheet = gSheet.wks.get_worksheet(i)
    presentations = getActivity(query, getDate(i))
    exportToSheet(query, worksheet, presentations)

如果您需要稍后在代码中访问工作表,则可以创建字典worksheets。然后,您可以使用worksheets[1]worksheets[2]等访问工作表。

worksheets = {}
for i in range(1, 8):
    worksheets[i] = gSheet.wks.get_worksheet(i)
    presentations = getActivity(query, getDate(i))
    exportToSheet(query, worksheets[i], presentations)

答案 1 :(得分:1)

此处: - worksheet+i = gSheet.wks.get_worksheet(i)

使用赋值运算符时,可以将右侧的值分配给左侧的变量或元素。在你的情况下,左边没有变量或元素,而是一个解释的值:你试图为一个不是“容器”的东西赋值。

从这里开始 syntax-error: can't assign to operator