我想用Python构建一个应用程序,在这个应用程序中,我必须在按键时进行检测

我想用Python构建一个应用程序,在这个应用程序中,我必须在按键时进行检测,python,input,keyboard,raspberry-pi,raspbian,Python,Input,Keyboard,Raspberry Pi,Raspbian,大家好,我正在用python在raspbian上构建一个汽车遥控器 但是我想要的是,当按下“w”键时,我想调用forward(),但问题是如何在按下-key-is-pressed()时得到这个东西 谢谢您可以使用它在树莓皮上实现您想要的功能。Curses是一个用于CLI程序的图形化API,您可以实现的不仅仅是检测关键事件 在下面的示例中,当↑ 按键被按下。当按下q时,我们停止程序 import curses def example_curses(stdscr): stdscr.keyp

大家好,我正在用python在raspbian上构建一个汽车遥控器 但是我想要的是,当按下“w”键时,我想调用
forward()
,但问题是如何在按下-key-is-pressed()时得到这个东西 谢谢

您可以使用它在树莓皮上实现您想要的功能。Curses是一个用于CLI程序的图形化API,您可以实现的不仅仅是检测关键事件

在下面的示例中,当↑ 按键被按下。当按下q时,我们停止程序

import curses

def example_curses(stdscr):
    stdscr.keypad(1)
    while 1:
        key = stdscr.getch()
        if key == curses.KEY_UP: 
            stdscr.addstr("Up is pressed; ")
            # call forward()
        elif key == ord('q'):
            break


def main():
    curses.wrapper(example_curses)
    print("'q' has pressed")

if __name__ == "__main__":
    main()
我们还使用了
stdscr.小键盘(1)
,因为它可以帮助我们检测特殊按键的按下:

终端通常返回特殊键,如光标键或 导航键,如Page Up和Home,作为多字节转义 序列虽然您可以编写应用程序来期望这样的结果 序列和相应的处理,诅咒可以帮你, 返回一个特殊值,例如
curses.KEY\u LEFT
。诅咒 作业时,您必须启用键盘模式

你可以用树莓皮来实现你想要的。Curses是一个用于CLI程序的图形化API,您可以实现的不仅仅是检测关键事件

在下面的示例中,当↑ 按键被按下。当按下q时,我们停止程序

import curses

def example_curses(stdscr):
    stdscr.keypad(1)
    while 1:
        key = stdscr.getch()
        if key == curses.KEY_UP: 
            stdscr.addstr("Up is pressed; ")
            # call forward()
        elif key == ord('q'):
            break


def main():
    curses.wrapper(example_curses)
    print("'q' has pressed")

if __name__ == "__main__":
    main()
我们还使用了
stdscr.小键盘(1)
,因为它可以帮助我们检测特殊按键的按下:

终端通常返回特殊键,如光标键或 导航键,如Page Up和Home,作为多字节转义 序列虽然您可以编写应用程序来期望这样的结果 序列和相应的处理,诅咒可以帮你, 返回一个特殊值,例如
curses.KEY\u LEFT
。诅咒 作业时,您必须启用键盘模式


其实这不是我想要的。我需要一个while-a-key-is-pressed功能。这就是它的功能,
而stdscr.getch()==key
等于while-a-key-is-pressed实际上这不是我想要的。我需要一个while-a-key-is-pressed功能。这就是它的功能,
while stdscr.getch()==key
is~等于while-a-key-is-pressed