python实时检测键盘输入函数的示例


Posted in Python onJuly 17, 2019

在嵌入式、尤其是机器人的python编程中,经常需要实时检测用户的键盘输入来随时控制机器人,这段代码可以帮助我们提取用户输入的字符,并在按下键盘的时候作出反应。

import sys
import tty
import termios

def readchar():
  fd = sys.stdin.fileno()
  old_settings = termios.tcgetattr(fd)
  try:
    tty.setraw(sys.stdin.fileno())
    ch = sys.stdin.read(1)
  finally:
    termios.tcsetattr(fd, termios.TCSADRAIN, old_settings)
  return ch

def readkey(getchar_fn=None):
  getchar = getchar_fn or readchar
  c1 = getchar()
  if ord(c1) != 0x1b:
    return c1
  c2 = getchar()
  if ord(c2) != 0x5b:
    return c1
  c3 = getchar()
  return chr(0x10 + ord(c3) - 65)

while True:
  key=readkey()
  if key=='w':
    #go_forward()
  if key=='a':
    #go_back()
  if key=='s':
    #go_left()
  if key=='d':
  	#go_right()
  if key=='q':
  	break

key = readkey()即可使用

以上这篇python实时检测键盘输入函数的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python利用Beautiful Soup模块创建对象详解
Mar 27 Python
Python实现对百度云的文件上传(实例讲解)
Oct 21 Python
Python中进程和线程的区别详解
Oct 29 Python
Python3一行代码实现图片文字识别的示例
Jan 15 Python
pandas or sql计算前后两行数据间的增值方法
Apr 20 Python
Python生成器定义与简单用法实例分析
Apr 30 Python
python 字符串只保留汉字的方法
Nov 16 Python
python感知机实现代码
Jan 18 Python
使用Python的OpenCV模块识别滑动验证码的缺口(推荐)
May 10 Python
python2使用bs4爬取腾讯社招过程解析
Aug 14 Python
Python日志:自定义输出字段 json格式输出方式
Apr 27 Python
pycharm软件实现设置自动保存操作
Jun 08 Python
python  文件的基本操作 菜中菜功能的实例代码
Jul 17 #Python
python对绑定事件的鼠标、按键的判断实例
Jul 17 #Python
Django model update的多种用法介绍
Mar 28 #Python
Django model select的多种用法详解
Jul 16 #Python
python删除文件夹下相同文件和无法打开的图片
Jul 16 #Python
Python split() 函数拆分字符串将字符串转化为列的方法
Jul 16 #Python
python实现字符串完美拆分split()的方法
Jul 16 #Python
You might like
php中的一些数组排序方法分享
2012/07/20 PHP
PHP中多维数组的foreach遍历示例
2014/06/13 PHP
Thinkphp5行为使用方法汇总
2017/12/21 PHP
Laravel统一错误处理为JSON的方法介绍
2020/10/18 PHP
jQuery 表单验证扩展(四)
2010/10/20 Javascript
jquery提升性能最佳实践小结
2010/12/06 Javascript
createElement与createDocumentFragment的点点区别小结
2011/12/19 Javascript
jquery将一个表单序列化为一个对象的方法
2013/12/02 Javascript
JavaScript字符串对象的concat方法实例(用于连接两个或多个字符串)
2014/10/16 Javascript
jQuery实现数字加减效果汇总
2014/12/16 Javascript
JavaScript中的数值范围介绍
2014/12/29 Javascript
Bootstrap的图片轮播示例代码
2015/08/31 Javascript
JS+CSS相对定位实现的下拉菜单
2015/10/06 Javascript
jQuery插件formValidator自定义函数扩展功能实例详解
2015/11/25 Javascript
JavaScript ParseFloat()方法
2015/12/18 Javascript
使用jQuery制作Web页面遮罩层插件的实例教程
2016/05/26 Javascript
jQuery实现邮箱下拉列表自动补全功能
2016/09/08 Javascript
微信小程序 教程之数据绑定
2016/10/18 Javascript
基于Vue实现图书管理功能
2017/10/17 Javascript
LayUI表格批量删除方法
2018/08/15 Javascript
[02:47]DOTA2英雄基础教程 野性怒吼兽王
2013/12/05 DOTA
[46:27]DOTA2上海特级锦标赛主赛事日 - 1 胜者组第一轮#2LGD VS MVP.Phx第一局
2016/03/02 DOTA
Python实现带百分比的进度条
2016/06/28 Python
Python基于高斯消元法计算线性方程组示例
2018/01/17 Python
基于python框架Scrapy爬取自己的博客内容过程详解
2019/08/05 Python
pytorch 实现将自己的图片数据处理成可以训练的图片类型
2020/01/08 Python
在tensorflow中实现屏蔽输出的log信息
2020/02/04 Python
最新PyCharm 2020.2.3永久激活码(亲测有效)
2020/11/26 Python
CSS3实现自定义Checkbox特效实例代码
2017/04/24 HTML / CSS
浅谈pc和移动端的响应式的使用
2019/01/03 HTML / CSS
Bodum官网:咖啡和茶壶、玻璃器皿、厨房电器等
2018/08/01 全球购物
学前教育学生自荐信范文
2013/12/31 职场文书
企业办公室岗位职责
2014/03/12 职场文书
高中班级口号
2014/06/09 职场文书
房地产项目合作意向书
2015/05/08 职场文书
mysql 生成连续日期及变量赋值
2022/03/20 MySQL