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程序的方法
Apr 21 Python
python爬取网站数据保存使用的方法
Nov 20 Python
python编写暴力破解FTP密码小工具
Nov 19 Python
python使用datetime模块计算各种时间间隔的方法
Mar 24 Python
Python中将字典转换为XML以及相关的命名空间解析
Oct 15 Python
Python 描述符(Descriptor)入门
Nov 20 Python
python实现图片彩色转化为素描
Jan 15 Python
python脚本当作Linux中的服务启动实现方法
Jun 28 Python
解决win7操作系统Python3.7.1安装后启动提示缺少.dll文件问题
Jul 15 Python
基于K.image_data_format() == 'channels_first' 的理解
Jun 29 Python
详解python实现可视化的MD5、sha256哈希加密小工具
Sep 14 Python
解决TensorFlow训练模型及保存数量限制的问题
Mar 03 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
风格模板初级不完全修改教程
2006/10/09 PHP
php面向对象全攻略 (四)构造方法与析构方法
2009/09/30 PHP
php正则表达式使用的详细介绍
2013/04/27 PHP
PHP实现懒加载的方法
2015/03/07 PHP
php使用escapeshellarg时中文被过滤的解决方法
2016/07/10 PHP
PHP 7.0新增加的特性介绍
2017/06/08 PHP
Laravel 对某一列进行筛选然后求和sum()的例子
2019/10/10 PHP
PHP如何获取Cookie并实现模拟登录
2020/07/16 PHP
xheditor与validate插件冲突的解决方案
2010/04/15 Javascript
jquery 全局AJAX事件使用代码
2010/11/05 Javascript
Textarea与懒惰渲染实现代码
2012/01/04 Javascript
Jquery getJSON方法详细分析
2013/12/26 Javascript
Node.js中HTTP模块与事件模块详解
2014/11/14 Javascript
js实现用户离开页面前提示是否离开此页面的方法(包括浏览器按钮事件)
2015/07/18 Javascript
JavaScript模块规范之AMD规范和CMD规范
2015/10/27 Javascript
一个Vue页面的内存泄露分析详解
2018/06/25 Javascript
vue实现微信获取用户信息的方法
2019/03/21 Javascript
微信小程序获取用户绑定手机号方法示例
2019/07/21 Javascript
JavaScript JSON使用原理及注意事项
2020/07/30 Javascript
举例讲解Python设计模式编程中的访问者与观察者模式
2016/01/26 Python
Python 判断是否为质数或素数的实例
2017/10/30 Python
Python中文件的写入读取以及附加文字方法
2019/01/23 Python
Python3.4学习笔记之列表、数组操作示例
2019/03/01 Python
Python实现带下标索引的遍历操作示例
2019/05/30 Python
python操作微信自动发消息的实现(微信聊天机器人)
2020/07/14 Python
css3media响应式布局实例
2016/07/08 HTML / CSS
Philosophy美国官网:美国美容品牌
2016/08/15 全球购物
美国鲜花递送:UrbanStems
2021/01/04 全球购物
饭店工作计划书
2014/01/10 职场文书
你的创业计划书怎样才能打动风投
2014/02/06 职场文书
网站美工岗位职责
2014/04/02 职场文书
管理岗位竞聘演讲稿
2014/08/18 职场文书
小学四年级作文之人物作文
2019/11/06 职场文书
SpringBoot实现quartz定时任务可视化管理功能
2021/08/30 Java/Android
MySQL 如何限制一张表的记录数
2021/09/14 MySQL
DE1107机评
2022/04/05 无线电