0

我有一个非常令人沮丧的python问题。在这段代码中

fixedKeyStringInAVar = "SomeKey"

def myFunc(a, b):
    global sleepTime
    global fixedKeyStringInAVar
    varMe=int("15")
    sleepTime[fixedKeyStringInAVar] = varMe*60*1000
    #more code

现在这行得通。但是有时当我运行此功能时,我会得到

TypeError: 'int' object does not support item assignment

这非常烦人,因为我尝试了几个测试用例并且无法重现错误,但是当我运行完整代码时它经常发生。该代码从数据库读取数据,访问站点等,因此我很难通过数据,因为它从多个来源读取并取决于更改的第 3 方输入(网站)。

这个错误可能是什么?

4

2 回答 2

5
  1. global除非您想更改全局名称的绑定,否则不要在函数中使用关键字。

  2. sleepTime =在您的代码中搜索“ ”。您在程序中的某个位置将一个 int 对象绑定到该sleepTime名称。

于 2009-02-15T11:12:08.810 回答
1

你的 sleepTime 是一个全局变量。它可以在您的程序中的某个时间点更改为 int。

项目分配是函数中的“foo[bar] = baz”结构。

于 2009-02-15T10:40:58.077 回答