如何在命令行中接受Python的键盘输入?

12 浏览
0 Comments

如何在命令行中接受Python的键盘输入?

此问题已有答案:

可能是重复问题:

Python读取用户的单个字符

我想使用Python通过箭头键来控制机器人。 我的想法是实现类似以下的代码……

#!/usr/bin/env python
# control a robot using python
exit = 0
while exit == 0:
  keypress = ##get keypress, if no key is pressed, continue##
  if keypress == 'q':
    exit = 1
    break
  elif keypress == KEY_UP:
    ##robot move forward##
  elif keypress == KEY_DOWN:
    ##robot move backward##
print "DONE"

但问题是我不知道如何获取用户的输入。 而且我从所发现的资料中也不能使用类似于pygame的基于GUI的解决方案,因为机器人不使用显示器。

非常感谢任何帮助!!

admin 更改状态以发布 2023年5月23日
0
0 Comments

一个简单的curses示例。查看curses模块的文档了解详情。\n

import curses
stdscr = curses.initscr()
curses.cbreak()
stdscr.keypad(1)
stdscr.addstr(0,10,"Hit 'q' to quit")
stdscr.refresh()
key = ''
while key != ord('q'):
    key = stdscr.getch()
    stdscr.addch(20,25,key)
    stdscr.refresh()
    if key == curses.KEY_UP: 
        stdscr.addstr(2, 20, "Up")
    elif key == curses.KEY_DOWN: 
        stdscr.addstr(3, 20, "Down")
curses.endwin()

0