[英]How to stop a program when a key is pressed in python?
I have a program that is an endless loop that prints "program running" every 5 seconds and I want to stop it when I press the end key. 我有一个程序,它是一个无限循环,每5秒打印一次“程序正在运行”,我想在按结束键时停止它。
So I created a key listener that returns false if the end key is pressed. 因此,我创建了一个按键侦听器,如果按下结束键,该侦听器将返回false。 That should work if I won't have the endless loop.
如果我没有无尽的循环,那应该可以工作。 And I want it to work even when I'm in the endless loop.
而且我希望它即使在无尽的循环中也能正常工作。
Here's my code: 这是我的代码:
from pynput import keyboard
import time
def on_press(key):
print key
if key == keyboard.Key.end:
print 'end pressed'
return False
with keyboard.Listener(on_press=on_press) as listener:
while True:
print 'program running'
time.sleep(5)
listener.join()
from pynput import keyboard
import time
break_program = False
def on_press(key):
global break_program
print (key)
if key == keyboard.Key.end:
print ('end pressed')
break_program = True
return False
with keyboard.Listener(on_press=on_press) as listener:
while break_program == False:
print ('program running')
time.sleep(5)
listener.join()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.