我一直在寻找一段时间,现在遍布互联网,但我似乎找不到一个独特的方式为Linux和Windows,允许捕捉箭头上下,等事件。(Python3)Linux和Windows箭头键按下

随着msvcrt包在Windows上,我发现这个解决方案:

from msvcrt import getch

while True:

print ('Distance from zero: ' + str(pos))

key = ord(getch())

if key == 224: #Special keys (arrows, f keys, ins, del, etc.)

key = ord(getch())

if key == 80: #Down arrow

对于Linux我使用了termios包:

import sys,tty,termios

class _Getch:

def __call__(self):

fd = sys.stdin.fileno()

old_settings = termios.tcgetattr(fd)

try:

tty.setraw(sys.stdin.fileno())

ch = sys.stdin.read(3)

finally:

termios.tcsetattr(fd, termios.TCSADRAIN, old_settings)

return ch

def get():

inkey = _Getch()

while(1):

k=inkey()

if k!='':break

if k=='\x1b[A':

print ("up")

def main():

for i in range(0,20):

get()

if __name__=='__main__':

main()

我还发现,由Linux和Windows支持的包: keyboard

import keyboard #Using module keyboard

while True:#making a loop

try: #used try so that if user pressed other than the given key error will not be shown

if keyboard.is_pressed(keyboard.KEY_DOWN):#if arrow down is pressed

print('You Pressed down Key!')

此se ems在Windows上工作良好,但在Linux上不行。

(我发现栈溢出所有这些实现。)

我的目标是它向上和向下移动我的箭上的不同选择。完成此任务的其他方法也很受欢迎。

python三个箭头怎么打出来_(Python3)Linux和Windows箭头键按下相关推荐

  1. windows守护进程_在Linux的Windows子系统上(WSL)使用Docker(Ubuntu)

    平时开发大部人都是在提供了高效GUI的window下工作,但是真正部署环境普遍都是在Linux中,所以为了让开发环境和部署环境统一,我们需要在windows模拟LInux环境,以前我们可能通过虚拟机的 ...

  2. python三个箭头怎么打出来_如何用箭头键在Python 3中移动海龟

    我有解决办法给你.代码并不理想,但它可以工作,您可以对其进行处理.你必须意识到,乌龟的位置不好,你必须调整它.这就是为什么我在设置方法我的乌龟抬头. 现在,您必须记住,right(deg)和left( ...

  3. python3发送https请求_关于python 3.x:如何在不引起python3的SSL证书错误的情况下将POST请求发送到https...

    事情是这样的,我一直在尝试从python内部将POST请求发送到LOGIN到我的大学wifi页面,但是却收到SSL证书错误. POST请求在chrome的POSTMAN扩展中可以正常工作. 这是我使用 ...

  4. python 画布包括不了全部组件?_试验程序:画布版九键琴

    近期有读者询问如何制作出滑动琴键连续发出声音的程序,他尝试用一排按钮充当琴键,但每次滑动只能触发一个按钮的点击事件,因此也只能发出一个声音.我提示他用画布替代按钮,他希望给予更具体的提示,于是我索性自 ...

  5. python localtime 与utc时间差5分钟_在linux中用localtime()显示的时间与实际时间不相符,不是与北京时间差8个小时,而是差15个小时...

    为方便调试程序,输入数据我用了空格. #include #include void main(){ struct tm *ptm; time_t rawtime, t; int year,month, ...

  6. python爬取知乎话题广场_用于爬取知乎某个话题下的精华问题中所有回答的爬虫...

    思路 我的整个算法的思路还是很简单的,文字版步骤如下: 1.通过话题广场进入某个话题的页面,避免了登陆注册页面的验证,查找到对应要爬取的话题,从 url 中得到话题id 2.该页面的所有资源采用了延迟 ...

  7. python计算两组数据的协方差_(python3)数据分析之Pandas:汇总、统计、相关系数和协方差...

    pandas对象中拥有一组常用的数学和统计方法,跟NumPy数组相比,它们是基于没有缺失数据的加上构建的. In [71]: df = DataFrame([[1.4,np.nan],[7.1,-4. ...

  8. centos7安装mysql8.0简书_【Linux实战03】CentOS 7 下 MySQL 8.0 的安装

    一.安装前准备 1.查看当前服务器的发行版本号 2.查看当前服务器的内核版本 3.查看当前服务器的操作系统位数 ----温馨提示---- 为什么先做如上三个操作呢? 多数同学,部署各类软件不成功的原因 ...

  9. liunx 加入域控_让Linux使用Windows域控制器做用户认证

    最近为了做一个客户的问题需要搭一套Windows AD给Linux通过winbind做认证使得Windows AD用户可以登陆Linux机器的环境.因为头一次做这样的配置,所以颇费了一番周折.下面就记 ...

最新文章

  1. leetcode算法题--删除回文子序列
  2. 5大食物千万别挑太艳的
  3. Linux_《Linux命令行与shell脚本编程大全》第二章学习总结
  4. Java中使用递归算法实现查找树形结构中所有父级和子级节点
  5. 数据归一化处理方法_数据预处理:归一化和标准化
  6. Laravel源码解析之Eloquent Model
  7. outlook 附件保存位置-附件无法打开
  8. Linux 定时任务详解
  9. 9. PHP 字符串
  10. 宁波计算机程序32届初赛,25届宁波市中小学计算机程序设计竞赛初赛试题
  11. 【译】45种Javascript技巧大全
  12. java.exe和javaw.exe有什么区别吗?
  13. 阿里云域名怎么注册和使用(新手教程)
  14. LTE 中的ANR以及TNL介绍
  15. 卡尔曼滤波器的理解,C代码实现,和opencv里面KalmanFilter 的使用
  16. android短信接收器的实现,可以实现自动填写短信验证码功能
  17. 林轩田机器学习基石(Machine Learning Foundations)笔记(一)
  18. 395计算机毕业设计
  19. 70行代码实现同花顺,通达信,麦语言大部分技术指标公式
  20. MATLAB绘图合集: 绘制表达式和函数fplot

热门文章

  1. LVGL-gui_user.c
  2. 人脸识别技术有哪些方案
  3. JavaWeb旅游项目登陆功能
  4. 关于VideoQA(视频问答)的基本思路总结
  5. 实现strstr()函数
  6. 2020年 java题库
  7. 用Python画中国地图,实现各省份数据可视化!可视化简直了!
  8. Code,Diagram and Model
  9. 关于dva的put,put.resolve
  10. 智能家居云服务器设计规格