Skip to main content
 首页 » 编程设计

python之list.append(variable) 不 append 但替换列表

2025年05月04日82shangdawei

我创建了一个函数,它创建一个空列表,并将另一个列表中的值赋给一个变量。然后代码应该在每次调用函数时将变量的值 append 到列表中。但是该函数并没有追加,而是替换了列表中的元素。我可以这样说,因为当我打印列表时,前一个元素丢失了。代码如下。我需要这个来进行模拟考试。有什么想法吗?

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

请您参考如下方法:

这样做的不是追加,而是您在两行之前显式替换现有变量。

正如 CactusWoman 指出的那样,您在这里根本不需要全局变量。 tracker 是一个纯局部变量;至于 trackerresult,一旦你摆脱了分配,你只会改变它,所以没有必要将它声明为全局的。