位置: 编程技术 - 正文

详解Python实现按任意键继续/退出的功能(python按位与操作)

编辑:rootadmin

推荐整理分享详解Python实现按任意键继续/退出的功能(python按位与操作),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:如何按照python,python按位或怎么按,python中按钮的位置怎么摆放,python按f5,如何按照python,python按照指定顺序排序,python按照指定顺序排序,python按照指定顺序排序,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

要实现该功能,需要的就是暂停程序、等待并捕捉用户的一个键盘输入,然后继续执行。Python 有内建的库能帮我们实现该功能,不过要区别对待 Windows 和 Linux。

msvcrt 中的 getch() 方法 能够帮助在 Windows 下实现,其作用是获取一个按键响应并返回对应的字符。它并不在命令行中回显。有如下程序段:

这里利用 ord 将获得的字符转换为 ASCII 数值,例如捕获按键“d”(注意是小写)将得到数值。

Linux 下呢?嗯,相对复杂一点点,不过先理清思路的话就好办了。

首先要知晓一下 Linux 终端的三种模式,分别为规范模式、非规范模式和 raw 模式:

详解Python实现按任意键继续/退出的功能(python按位与操作)

规范模式

规范模式,也被成为 cooked 模式,是用户常见的模式。驱动程序输入的字符保存在缓冲区,并且仅在接收到回车键时才将这些缓冲的字符发送到程序。缓冲数据使驱动程序可以实现最基本的编辑功能, 被指派这些功能的特定键在驱动程序里设置,可以通过命令 stty 或系统调用 tcsetattr 来修改。

非规范模式

当缓冲和编辑功能被关闭时,连接被成为非规范模式。终端处理器仍旧进行特定的字符处理,例如处理 Ctrl-C 及换行符之间的转换,但是编辑键将没有意义,因此相应的输入被视为常规的数据输入,程序需要自己实现编辑功能。

raw 模式

当所有处理都被关闭后,驱动程序将输入直接传递给程序,连接被成为 raw 模式。

这里我们需要借助于非规范模式,那么要实现刚才 Windows 上的相似行为,需要以下代码:

由此看来,我们只需利用上面的方法捕获一个按键响应,然后继续程序即可做到按任意键继续或退出的功能了。当然,做到按指定键继续或退出的功能也可以按类似的方法实现,例如:

这样,当用户按下“D”或“d”时,则程序退出。

总结

标签: python按位与操作

本文链接地址:https://www.jiuchutong.com/biancheng/386188.html 转载请保留说明!

上一篇:利用Python开发微信支付的注意事项(python能不能开发微信小程序)

下一篇:Python进行数据提取的方法总结(python提取信息)

  • 增值税率和征收率
  • 居民个人取得境内、境外所得,如何计算应纳税额?
  • 营业执照办理税务登记需要什么资料
  • 对公账户余额和实际不符
  • 银行存款日记账最后一行怎么填
  • 子公司利润母公司要交税吗?
  • 篮球俱乐部是非洲的吗
  • 减免的附加税怎么做会计分录
  • 2019印花税减免
  • 个税专项扣除是什么时候开始实行
  • 企业所得税税前扣除异常是什么意思
  • 固定资产报废账务怎么处理
  • 企业用于存货的支出
  • 未开票收入怎么写分录
  • 开具发票给顾客公司需要交纳什么税?
  • 个人所得税退税截止日期2023
  • 公司增资需要什么
  • 建筑成本百分比如何确定?
  • 赠送客户产品账务处理
  • 固定资产清理产生的费用
  • 委托贷款合同效力
  • 销售材料并提供安装服务税率
  • 个体工商户给员工交社保属于职工社保吗
  • 坏账准备冲回是借方还是贷方
  • 主营业务收到的现金
  • 固定资产清理净值是什么意思
  • 销售部门的固定资产折旧计入什么科目
  • mac计算器怎么变小
  • win10双系统删除linux
  • 资产减值损失在哪个表
  • find.exe应用程序错误
  • 年底所得税账务处理
  • 土地增值税扣除系数
  • postman汉化包
  • vue报错cannot read property
  • 商业汇票转让后,能否追索前手
  • 浏览器并发请求队列数量怎么设置
  • 股东无偿投入的土地需要摊销吗
  • 微信公众号服务平台
  • 命令行查看硬件信息
  • 个税申报系统操作指南
  • phpcms v9 getshell
  • 发票必须在什么时候开
  • python 定制类
  • 不动产投资缴纳什么税
  • 固定资产清理是三栏式还是多栏式
  • 上个月计提多了,这个月怎么办?
  • 房地产行业概况
  • 农产品收购发票使用范围
  • 现金折扣要扣除折扣金额入账吗
  • 出口退税进项税额转出怎么申报
  • 工程检测费的会计分录
  • 施工单位食堂管理要求
  • 提前还贷款要满十八岁吗
  • 主营业务成本包括工资吗
  • 怎样计算存款利息?
  • 删除一组数据中的指定数据
  • sql server 错误
  • mssql server .ldf和.mdf的文件附加数据库的sql语句
  • win10系统的邮件和日历跟outlook一样嘛
  • windows7升级到windows8.1
  • linux操作系统查询命令
  • solaris 创建文件
  • srvload.exe - srvload是什么进程
  • win7的wifi功能在哪
  • 手机更新升级版本下载
  • 鼠标的指针
  • js立即执行函数几种写法
  • css如何设置div位置
  • 查询同一网段下的其他ip
  • Errors running builder 'Android Resource Manager' on Project java.lang.NullPointerException
  • unity官方插件
  • unity3d碰撞检测源码
  • 搭建nodejs项目
  • 音频基础知识及训练
  • 高性能javascript的内容简介
  • python生产
  • javascript面向对象编程
  • 残疾人创业有税收什么优惠政策
  • 企业演讲稿 英文
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设