我正在尝试创建一个完全自动化的程序,该程序只有在计算机刚开始运行时正巧使用它时才会停止。为此,请在程序启动时等待10秒钟,以查看计算机是否处于空闲状态,如果空闲,则程序将继续运行。但是,如果执行某项操作,则会遇到中断它的问题。问题是,如果最后一次输入是0秒前,则我正在尝试中断循环,这意味着我在计算机上。但是,当我启动计时器时,它为0,因此会中断循环。
我尝试将time.sleep放在if语句和get last输入之间,但是它仍然从零开始。
def wait():
while 1:
GetLastInputInfo = int(get_idle_duration())
time.sleep(1)
if GetLastInputInfo == 0:
break
if get_idle_duration() > 10:
warthunder()
killProcess()
break
print('Done')
我希望程序等待10秒钟,并且如果我移动了鼠标或按下了某个键以使程序中断,则该
答案 0 :(得分:0)
所以我知道了。这是更新的代码:
def wait():
while 1:
time.sleep(1)
if get_idle_duration() == 0.0:
break
if get_idle_duration() > 10:
warthunder()
killProcess()
break
print('Done')
我得到了GetLastInput变量,并将第一个if语句更改为float