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导入oracle数据的方法
Jul 10 Python
python实现网站的模拟登录
Jan 04 Python
Python自动化部署工具Fabric的简单上手指南
Apr 19 Python
Python中的日期时间处理详解
Nov 17 Python
Win10下Python环境搭建与配置教程
Nov 18 Python
Python实现文件内容批量追加的方法示例
Aug 29 Python
python中利用zfill方法自动给数字前面补0
Apr 10 Python
python 删除非空文件夹的实例
Apr 26 Python
numpy使用fromstring创建矩阵的实例
Jun 15 Python
python关于矩阵重复赋值覆盖问题的解决方法
Jul 19 Python
使用OpCode绕过Python沙箱的方法详解
Sep 03 Python
pycharm Tab键设置成4个空格的操作
Feb 26 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
DC游戏Steam周三特惠 《蝙蝠侠》阿卡姆系列平史低
2020/04/09 欧美动漫
PHP 读取和修改大文件的某行内容的代码
2009/10/30 PHP
PHP下通过file_get_contents的代理使用方法
2011/02/16 PHP
php 获取本地IP代码
2013/06/23 PHP
YII框架中搜索分页jQuery写法详解
2016/12/19 PHP
php+croppic.js实现剪切上传图片功能
2018/08/14 PHP
PHP如何通过date() 函数格式化显示时间
2020/11/13 PHP
javascript 文档的编码问题解决
2009/03/01 Javascript
Javascript 定时器调用传递参数的方法
2009/11/12 Javascript
jQuery对象和DOM对象使用说明
2010/06/25 Javascript
JS的事件绑定深入认识
2014/06/26 Javascript
浅谈JavaScript中的对象及Promise对象的实现
2015/11/15 Javascript
DOM操作和jQuery实现选项移动操作的简单实例
2016/06/07 Javascript
jquery模拟多级复选框效果的简单实例
2016/06/08 Javascript
angularjs下拉框空白的解决办法
2017/06/20 Javascript
简单实现jQuery弹窗效果
2017/10/30 jQuery
用WebStorm进行Angularjs 2开发(环境篇:Windows 10,Angular-cli方式)
2018/12/05 Javascript
微信小程序实现随机验证码功能
2018/12/20 Javascript
详解vue-cli中使用rem,vue自适应
2019/05/06 Javascript
vue组件三大核心概念图文详解
2019/05/30 Javascript
[41:12]Liquid vs Secret 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.24
2019/09/10 DOTA
Python Mysql自动备份脚本
2008/07/14 Python
Python元字符的用法实例解析
2018/01/17 Python
Python实现对文件进行单词划分并去重排序操作示例
2018/07/10 Python
python如何创建TCP服务端和客户端
2018/08/26 Python
python之验证码生成(gvcode与captcha)
2019/01/02 Python
python实现自动解数独小程序
2019/01/21 Python
python实现简单图片物体标注工具
2019/03/18 Python
查看python安装路径及pip安装的包列表及路径
2019/04/03 Python
python实现数据清洗(缺失值与异常值处理)
2019/12/02 Python
Ubuntu中配置TensorFlow使用环境的方法
2020/04/21 Python
基于HTML5 Canvas:字符串,路径,背景,图片的详解
2013/05/09 HTML / CSS
大学运动会通讯稿
2014/01/28 职场文书
2014年爱国卫生工作总结
2014/11/22 职场文书
感谢信格式范文
2015/01/22 职场文书
罗马假日观后感
2015/06/08 职场文书