Python 按下按钮后,Tkinter将不会刷新 导入tkinter 随机输入 从随机导入randint 从tkinter进口* 从tkinter.constants导入中心,命令,X 从输入导入协同程序 将matplotlib.pyplot作为plt导入 将numpy作为np导入 导入时间 导入操作系统 导入hashlib 导入异步 当前代码=无 standbyMessage=“输入代码” correctHash=[已编辑] 异步def correctCode(): 全局代码显示 i=5 当i>0时: codesplay.config(text=f'DOOR OPEN\n{i}') 时间。睡眠(1) i-=1 通过 按def键(k): 全局电流码 如果CurrentCode==无: 当前代码=k 其他: 如果len(str(CurrentCode))

Python 按下按钮后,Tkinter将不会刷新 导入tkinter 随机输入 从随机导入randint 从tkinter进口* 从tkinter.constants导入中心,命令,X 从输入导入协同程序 将matplotlib.pyplot作为plt导入 将numpy作为np导入 导入时间 导入操作系统 导入hashlib 导入异步 当前代码=无 standbyMessage=“输入代码” correctHash=[已编辑] 异步def correctCode(): 全局代码显示 i=5 当i>0时: codesplay.config(text=f'DOOR OPEN\n{i}') 时间。睡眠(1) i-=1 通过 按def键(k): 全局电流码 如果CurrentCode==无: 当前代码=k 其他: 如果len(str(CurrentCode)),python,tkinter,Python,Tkinter,对于我建议使用的循环(也更通用),因为在时使用类似的循环会干扰tkintersmainloop>,如果达不到它将不会更新: 从tkinter导入Tk,标签 def回路(编号): 如果数字

对于我建议使用的循环(也更通用),因为在
时使用类似
的循环会干扰tkinters
mainloop>,如果达不到它将不会更新:

从tkinter导入Tk,标签
def回路(编号):
如果数字<0:
返回
lbl.config(text=f'{number}')
root.after(10,循环,数字-1)
root=Tk()
lbl=标签(根,文本=“”)
lbl.pack()
环路(1000)
root.mainloop()
在您的情况下,您可以将
循环(5)
设置为循环5次或类似的内容
提到
.after(time\in\u ms,func,args)
之后的某个地方是关于如何添加kwargs的,但是

另一种方法是使用
root.update()
(不建议使用,因为它可能会导致其他问题):

从tkinter导入Tk,标签
def回路(编号):
对于范围内的i(编号):
lbl.config(text=f'{i}')
root.update()
root=Tk()
lbl=标签(根,文本=“”)
lbl.pack()
环路(10000)
root.mainloop()