Python 诅咒获取按键
Python curses get keypress
我需要一种方法来检测箭头键和回车键。我的电脑上没有小键盘,所以这个语句正在寻找一个不存在的键:
char = window.getch()
if char == curses.KEY_ENTER:
stdscr.addstr("'enter' key pressed")
我只想用它来获取按键:
char = window.getkey()
if char == "\n":
stdscr.addstr("'enter' key pressed")
但我还必须使用 getch()
功能获取箭头键。有没有什么方法可以同时使用这两个函数,或者有其他方法可以获得我没有想到的两个密钥?
您可以考虑使用 keyboard
模块,与 pip install keyboard
一起安装。
从模块 GitHub example:
改编而来的类似以下内容可以帮助您前进
import keyboard
def print_pressed_keys(e):
if e.event_type == "down":
keys = [keyboard._pressed_events[name].name for name in keyboard._pressed_events]
print(keys)
if "up" in keys:
print("do stuff for up pressed")
elif "enter" in keys:
print("do stuff for enter pressed")
keyboard.hook(print_pressed_keys)
keyboard.wait()
Black Thunder gives a good detailed description of how to use the module here.
我需要一种方法来检测箭头键和回车键。我的电脑上没有小键盘,所以这个语句正在寻找一个不存在的键:
char = window.getch()
if char == curses.KEY_ENTER:
stdscr.addstr("'enter' key pressed")
我只想用它来获取按键:
char = window.getkey()
if char == "\n":
stdscr.addstr("'enter' key pressed")
但我还必须使用 getch()
功能获取箭头键。有没有什么方法可以同时使用这两个函数,或者有其他方法可以获得我没有想到的两个密钥?
您可以考虑使用 keyboard
模块,与 pip install keyboard
一起安装。
从模块 GitHub example:
改编而来的类似以下内容可以帮助您前进import keyboard
def print_pressed_keys(e):
if e.event_type == "down":
keys = [keyboard._pressed_events[name].name for name in keyboard._pressed_events]
print(keys)
if "up" in keys:
print("do stuff for up pressed")
elif "enter" in keys:
print("do stuff for enter pressed")
keyboard.hook(print_pressed_keys)
keyboard.wait()
Black Thunder gives a good detailed description of how to use the module here.