关于tkinter after()的疑问

from tkinter import *
root = Tk()
def x():
    i = 0
    while i<100:
        i+=1
        print(i)
        root.after(1000,x)    
x()

倒数第二行中的root.after(1000,x),我理解的是1000毫秒后执行一次x函数,将其放入while循环中,预期结果应该是每间隔1000毫秒打印一个1。
可实际上却是先从1打印到99,然后弹出root窗口,等待1000毫秒后,不停地从1打印到99,中间也没有1000毫秒的间隔。这是为什么?

阅读 2.3k
1 个回答

你这是在玩递归,print(i) 将被运行 100**100(100的100次方) 次

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题