我是一个Python noob,我正在尝试制作一个洗衣设备,用Python编程接口。现在,机器应该这样工作:
为此,输入洗涤/烘干时间后,按下一个按钮:
button1 = Button(window.tk, command = lambda:main_process(int(varWashtime.get()), int(varDrytime.get())))
def main_process(wash_seconds,dry_seconds):
wash(wash_seconds)
stop_wash()
dry(dry_seconds)
stop_dry()
return
def wash(seconds):
varWashStarted.set("Washing Started")
Timer(seconds,idle_fnc).start()
return
def stop_wash():
varWashStarted.set("Washing Stopped")
Timer(3,idle_fnc,()).start()
return
def dry(seconds):
varDryStarted.set("Drying Started")
Timer(seconds,idle_fnc,()).start()
return
def stop_dry():
varDryStarted.set("Drying Stopped")
return
def idle_fnc():
pass
return
在这里,我使用函数idle_fnc
使threading.Timer
正常工作。
我发现我可以使用Timer在彼此之后调用其他函数,但我更愿意从函数返回,然后分支到新函数。
我的问题是,当我点击按钮时,整个过程无需等待即可执行;我立即看到" Wash Stopped"和#34;干燥停止"在相应的标签上,没有触发延迟。
有什么问题?