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抓取Discuz!用户名脚本代码
Dec 30 Python
Python封装shell命令实例分析
May 05 Python
python实现读取excel写入mysql的小工具详解
Nov 20 Python
利用Python对文件夹下图片数据进行批量改名的代码实例
Feb 21 Python
Python操作rabbitMQ的示例代码
Mar 19 Python
python远程连接MySQL数据库
Apr 19 Python
使用Python制作一个打字训练小工具
Oct 01 Python
python爬虫开发之selenium模块详细使用方法与实例全解
Mar 09 Python
Django全局启用登陆验证login_required的方法
Jun 02 Python
Python3爬虫中pyspider的安装步骤
Jul 29 Python
python中delattr删除对象方法的代码分析
Dec 15 Python
Python实现信息管理系统
Jun 05 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数组
2006/10/09 PHP
『PHP』PHP截断函数mb_substr()使用介绍
2013/04/22 PHP
四个常见html网页乱码问题及解决办法
2015/09/08 PHP
Laravel5.1 框架Middleware中间件基本用法实例分析
2020/01/04 PHP
js 禁用浏览器的后退功能的简单方法
2008/12/10 Javascript
javascript 表格排序和表头浮动效果(扩展SortTable)
2009/04/07 Javascript
javascript void(0)的妙用
2009/10/21 Javascript
mailto的使用技巧分享
2012/12/21 Javascript
Jquery实现列表(隔行换色,全选,鼠标滑过当前行)效果实例
2013/06/09 Javascript
jquery 跳到顶部和底部动画2句代码简单实现
2013/07/18 Javascript
JavaScrip实现PHP print_r的数功能(三种方法)
2013/11/12 Javascript
JavaScript对象反射用法实例
2015/04/17 Javascript
Ubuntu系统下Angularjs开发环境安装
2016/09/01 Javascript
Bootstrap树形菜单插件TreeView.js使用方法详解
2016/11/01 Javascript
Javascript同时声明一连串(多个)变量的方法
2017/01/23 Javascript
jQuery多选框选择数量限制方法
2017/02/08 Javascript
简单的vue-resourse获取json并应用到模板示例
2017/02/10 Javascript
Angular.js中控制器之间的传值详解
2017/04/24 Javascript
初探JavaScript 面向对象(推荐)
2017/09/03 Javascript
微信小程序 数据绑定及运算的简单实例
2017/09/20 Javascript
python基础教程之popen函数操作其它程序的输入和输出示例
2014/02/10 Python
Python中使用logging模块打印log日志详解
2015/04/05 Python
Python的Django框架中的表单处理示例
2015/07/17 Python
python如何去除字符串中不想要的字符
2020/07/05 Python
解决Python2.7读写文件中的中文乱码问题
2018/04/12 Python
Python调用百度根据经纬度查询地址的示例代码
2019/07/07 Python
python实现与redis交互操作详解
2020/04/21 Python
网页布局中CSS样式无效的十个重要原因详解
2017/08/10 HTML / CSS
Html5实现用户注册自动校验功能实例代码
2016/05/24 HTML / CSS
软件设计的目标是什么
2016/12/04 面试题
中班中秋节活动反思
2014/02/18 职场文书
21岁生日感言
2014/02/27 职场文书
2015年乡镇信访工作总结
2015/04/07 职场文书
新闻发布会新闻稿
2015/07/17 职场文书
Windows Server 2019 配置远程控制以及管理方法
2022/04/28 Servers
Win11如何查看显卡型号 Win11查看显卡型号的方法
2022/08/14 数码科技