具有输入参数的Python倒数功能

时间:2018-06-27 05:35:41

标签: python python-3.x function tkinter

我有以下代码在GUI中的给定标签中显示倒计时。

代码如下:

    def countdown(self, a, remaining = None):
    if remaining is not None:
        self.remaining = remaining

    if self.remaining <= 0:
        a.configure(text="time's up!")
    else:
        a.configure(text="%d" % self.remaining)
        self.remaining = self.remaining - 1
        self.after(1000, self.countdown)

“ a”目前是我将在此函数中输入的标签的占位符变量。我的问题是我不知道如何在通过以下方式重用函数时保持“ a”状态:

self.after(1000, self.countdown)

谢谢!

1 个答案:

答案 0 :(得分:2)

根据tkinter文档,after的签名为:

after(delay_ms, callback=None, *args)

因此,您可以将“ a”或“剩余”作为参数传递,并将其收集在位置参数容器* args中,并在函数中使用它们。通过这种方式,您的功能将保持通用。