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完成FizzBuzzWhizz问题(拉勾网面试题)示例
May 05 Python
使用Python获取Linux系统的各种信息
Jul 10 Python
使用PyCharm配合部署Python的Django框架的配置纪实
Nov 19 Python
用pickle存储Python的原生对象方法
Apr 28 Python
对Python3中的input函数详解
Apr 22 Python
Python闭包思想与用法浅析
Dec 27 Python
TensorFlow车牌识别完整版代码(含车牌数据集)
Aug 05 Python
pytorch神经网络之卷积层与全连接层参数的设置方法
Aug 18 Python
python设置表格边框的具体方法
Jul 17 Python
Selenium 安装和简单使用的实现
Dec 04 Python
完美处理python与anaconda环境变量的冲突问题
Apr 07 Python
基于python制作简易版学生信息管理系统
Apr 20 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实现数组筛选奇数和偶数示例
2014/04/11 PHP
php实现XSS安全过滤的方法
2015/07/29 PHP
CI操作cookie的方法分析(基于helper类库)
2016/03/28 PHP
捕获关闭窗口的脚本
2009/01/10 Javascript
javascript 选择文件夹对话框(web)
2009/07/07 Javascript
基于jquery的inputlimiter 实现字数限制功能
2010/05/30 Javascript
Jquery之美中不足小结
2011/02/16 Javascript
23个Javascript弹出窗口特效整理
2011/02/25 Javascript
jQuery往返城市和日期查询实例讲解
2015/10/09 Javascript
JQueryEasyUI之DataGrid数据显示
2016/11/23 Javascript
详解VueJs前后端分离跨域问题
2017/05/24 Javascript
解决element ui select下拉框不回显数据问题的解决
2019/02/20 Javascript
使用Vue父子组件通信实现todolist的功能示例代码
2019/04/11 Javascript
微信小程序自定义多列选择器使用详解
2019/06/21 Javascript
微信小程序实现拨打电话功能的示例代码
2020/06/28 Javascript
Python自动扫雷实现方法
2015/07/25 Python
使用Python写个小监控
2016/01/27 Python
详解DeBug Python神级工具PySnooper
2019/07/03 Python
Django 接收Post请求数据,并保存到数据库的实现方法
2019/07/12 Python
python socket通信编程实现文件上传代码实例
2019/12/14 Python
TensorFlow2.1.0最新版本安装详细教程
2020/04/08 Python
使用Python封装excel操作指南
2021/01/29 Python
利用纯css3实现的文字亮光特效的代码演示
2014/11/27 HTML / CSS
鱼油专家:Omegavia
2016/10/10 全球购物
党委书记岗位职责
2013/11/24 职场文书
创业资金计划书
2014/02/06 职场文书
《与朱元思书》的教学反思
2014/04/17 职场文书
关于诚信的活动方案
2014/08/18 职场文书
离退休人员聘用协议书
2014/11/24 职场文书
社区活动总结
2015/02/04 职场文书
求职推荐信范文
2015/03/27 职场文书
学生检讨书怎么写
2015/05/07 职场文书
教师反邪教心得体会
2016/01/15 职场文书
如何使用Python提取Chrome浏览器保存的密码
2021/06/09 Python
Python实战之大鱼吃小鱼游戏的实现
2022/04/01 Python
Golang bufio详细讲解
2022/04/21 Golang