tkinter时钟函数错误:NameError

时间:2018-03-18 19:57:23

标签: python python-3.x time tkinter

我在tkinter中有一个时钟标签的功能:

def update_clock():
    global clock
    now = time.strftime("%H:%M:%S")
    clock.configure(text=now)
    clock.after(1000, update_clock)

我收到此错误:

NameError: name 'update_clock' is not defined

在我读过的所有时钟教程中,他们在最后一行的1000后面都有该函数的名称。我该如何解决这个错误?

1 个答案:

答案 0 :(得分:0)

由于您发布了minimal代码这个小例子来帮助您解决问题,因此错误告诉您在创建窗口小部件之前调用了您的函数。

import time
from tkinter import *


def update_clock():
    now = time.strftime("%H:%M:%S")
    clock.configure(text=now)
    clock.after(1000, update_clock)

root = Tk()

clock = Label(root, bg="red")
clock.pack()

update_clock() # make sure you call this after you label has been packed

root.mainloop()