Skip to main content
 首页 » 编程设计

Python 列表不添加,只替换

2025年05月04日19cyq1162

我正在努力做到这一点,当您按下按钮 1 时,它会将“1”添加到列表中。所以按下按钮两次应该输出 [1][1]。但它只打印 [1]。请注意,我是 python 的新手。

def addnumber(a): 
   numbers = [] 
   numbers.append(a) 
   print(numbers) 
button1 = Button(bottomFrame, text="1", command=lambda: addnumber(1)) 
button2 = Button(bottomFrame, text="2", command=lambda: addnumber(2)) 

请您参考如下方法:

问题是您正在将 numbers 重新初始化为函数内的空列表。因此,每次调用该函数时,都会创建一个空列表 numbers,因此之前附加的值会丢失。您需要将 numbers = [] 移到函数之外。通过这种方式,您只需将它定义为一个空列表,然后在每次函数调用期间,项目就会继续追加/添加到它。

numbers = [] 
 
def addnumber(a): 
   numbers.append(a) 
   print(numbers) 
 
button1 = Button(bottomFrame, text="1", command=lambda: addnumber(1)) 
button2 = Button(bottomFrame, text="2", command=lambda: addnumber(2))