gpt4 book ai didi

python - 将变量 append 到列表时,为什么会出现“"' str' object is not callable”?

转载 作者:行者123 更新时间:2023-12-01 04:24:46 24 4
gpt4 key购买 nike

我创建了一个函数,它创建一个空列表,并将另一个列表中的值分配给变量。然后代码应该在每次调用函数时将变量的值 append 到列表中。该函数被放置在 while 循环中,因此它应该继续追加。但是,在添加第一个元素后,我收到一条错误消息,告诉我该字符串对象不可调用。代码如下。我需要这个来模拟考试。有什么想法吗?:

def tracker():
global tracker
global trackerresult
trackerresult = []
tracker = opposite1[decider]
trackerresult.append(tracker)
print(trackerresult)

结果:

Traceback (most recent call last):
File "C:\Users\Timic\Downloads\Python Opposites Prorgam (1).py", line 47, in <module>
tracker()
TypeError: 'str' object is not callable

最佳答案

tracker 全局变量和 tracker 函数之间存在名称冲突。当您运行 def tracker(): ... 时,它将变量 tracker 设置为函数对象。当您第一次调用 tracker 函数时,它会修改全局变量 tracker 以显式指向 opposite1[decider] 的结果,这是一个字符串。下次尝试调用 tracker 函数会失败,因为该函数已被字符串覆盖。

关于python - 将变量 append 到列表时,为什么会出现“"' str' object is not callable”?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33288540/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com