python - 在 Windows 中使用 python3 时,如果不按回车就不可能从屏幕上输入单个字符,这仍然是真的吗?
问题描述
在 Unix 下可以用 termios 完成,但在 Windows 下不行。
我在 perl 中使用 TERM::Readkey 或在 Windows 批处理文件中很容易做到这一点。
如果这里给出了答案,我一直找不到。
我很难相信 python 忽略了基本上所有其他语言都可用的这种基本操作。
解决方案
上面的答案返回的是一个字节,而不是一个字符,所以需要对其进行解码。
这是一个无需按 Enter 即可返回单个字符的解决方案。它适用于 Windows 上的 python 3.4
def getChar():
import msvcrt
return msvcrt.getch().decode('utf-8')
推荐阅读
- c++ - 获取许多任何内置类型的低部分
- arrays - 将对象数组转换为字符串数组
- mysql - MySQL 数据库说明
- sql - 将活动行存储在位列中与将逻辑存储在视图中
- java - 膨胀类片段时出错:android.view.InflateException
- vb.net - 引用一维数组中的文本以用于一行代码 (vb)
- javascript - 找不到模块 @babel/preset-polyfill
- java - Apache POI (excel) 执行 getSheet() 与 createSheet()
- vba - 运行 vba 时彭博数据不刷新
- objective-c - MacOS 可访问性 API 更改所选范围位置的值