Python如何将用户条目添加到列表中的新值?

时间:2014-05-21 00:22:47

标签: python tkinter

我有一个简单的Tkinter条目。

当用户输入一个条目并按下GUI上的按钮时,我希望它将用户条目添加到名为self.players的列表中。

这在一定程度上起作用。该条目被添加到列表中,但当我输入第二个条目并按下按钮时,它将替换列表中的第一个条目,而不是像我想要的那样将其添加到列表中作为第二个条目。

我如何制作,以便每次都将条目添加到新值。 感谢

这是我的代码:

import tkinter
from tkinter import ttk

class Application(object):

    def __init__(self):
        self.root = tkinter.Tk()

        self.welcomeLabel = tkinter.Label(text = "Welcome to Darts!")
        self.welcomeLabel.grid(row=1, column=0)

        self.playerLabel = tkinter.Label(text = ("Type in Player names!"))
        self.playerLabel.grid(row=2, column=0)

        self.playerEntry = tkinter.Entry()
        self.playerEntry.grid(row=3, column=0)

        self.playGameButton = tkinter.Button(text = "Play", command = self.game_button)
        self.playGameButton.grid(row=4, column=0)


    def game_button(self):
        self.players = []

        playerData = self.playerEntry.get()

        self.players = (playerData)

        print (self.players)

myApp = Application()
myApp.root.mainloop()

1 个答案:

答案 0 :(得分:1)

使用append

self.players.append(playerData)

您当前的代码只是使用新信息覆盖已存储在列表中的数据。

这就是为什么列表中的信息只是最新的条目。 append将其添加到列表中已有的信息中。

参考

https://docs.python.org/2/tutorial/datastructures.html