在我学习Python和tkinter的过程中,我发现有时会出现这样的模式,我刚从tkinter上的一本书中提取过:
def manage_periodic_updates_during_play(self): 自….
这样做是没有限制的 - 它不是“递归” - 每次函数运行时,你只需要创建一个单独的事件来调用相同的函数。
如果直接实际调用自身的函数,而不依赖于使用Tkinter(ir其他框架)事件系统进行调度 - 那么您将被限制为cPython的默认递归限制,即1000次调用。 但就这样,拨打电话后 root.after 解析,yoru functina ctually结束,(并返回隐含的“None”) - 它是tkinter事件循环,它将进行下一次调用,而不是函数本身。
root.after
使用这种方式后不是递归。您只是将作业推送到队列中。没有限制,因为您只是为队列中的每个项目添加一个项目到队列中。假设这是你唯一这样做的地方,并且你只启动一次,那么队列永远不会超过一个。