[英]Python press key down until another key
我已经看过以前的帖子,但找不到有用的东西......
在全球范围内,我的目标是:python 中的一个脚本,如果我按“k”,它将开始保持“k”,直到我按退出键。 但问题是:它不持有“k”,我不知道为什么
如果有人可以帮助我会很高兴,谢谢
from pynput import keyboard
import pyautogui
def on_press(key):
try:
print('alphanumeric key {0} pressed'.format(
key.char))
if key.char == 'k':
return False
except AttributeError:
print('special key {0} pressed'.format(
key))
def on_release(key):
print('{0} released'.format(
key))
if key == keyboard.Key.esc:
# Stop listener
return False
def listening_k():
with keyboard.Listener(
on_press=on_press) as listener:
listener.join()
return True
def listening_esc():
with keyboard.Listener(
on_release=on_release) as listener:
listener.join()
return True
def hold_key(key):
while listening_k() == True :
pyautogui.keyDown(key)
if listening_esc() == True :
break
hold_key('k')
如果按下“k”键,您可以通过拥有一个包含 state(布尔值)的变量来简化操作。 每当您按下“k”键时使其为真,按下“esc”键时为假。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.