当用户按下键盘箭头时,我正在打印以下内容:
You picked left!
You picked left!
You picked right!
当用户按下escape键时,KeyboardInterrupt
应该在打印You pressed escape!
之后立即被提升,但它没有You pressed escape!
已打印,但仅此而已。同样的行为也发生在JupyterLab和PyCharm中
为什么不引发键盘中断?
from pynput.keyboard import Key, Listener
class CoolTrick:
@staticmethod
def _on_press(key):
if key == Key.left:
print('\rYou picked left!', end=' ')
if key == Key.right:
print('\rYou picked right!', end=' ')
if key == Key.esc:
print('\rYou pressed escape!', end=' ')
raise KeyboardInterrupt('You interrupted the process by'
'pressing escape.')
def run(self):
while True:
while True:
with Listener(
on_press=self._on_press) as listener:
listener.join()
ct = CoolTrick()
ct.run()
You pressed escape!
You picked right!
目前没有回答
相关问题 更多 >
编程相关推荐