从键盘实时读取按键的 python 函数
在 python 中,可以使用 msvcrt 库来获取用户从键盘输入的按键。与 c 语言中的 kbhit() 和 getch() 函数类似,msvcrt 提供了以下函数:
kbhit(): 检查键盘缓冲区中是否有可用的字符。getch(): 从键盘缓冲区读取单个按键或字符。
以下是使用 msvcrt 库获取按键的代码片段:
import msvcrtwhile True: if msvcrt.kbhit(): # 如果键盘缓冲区中有字符 a = ord(msvcrt.getch()) # 获取按键的扫描码(ASCII 码) if a == 0 or a == 224: # 如果是功能键 b = ord(msvcrt.getch()) # 获取功能键的第二个字节 x = a + (b * 256) # 将两个字节组合成一个扫描码 return x # 返回扫描码 else: return a # 返回 ASCII 码
登录后复制
在该代码中:
立即学习“Python免费学习笔记(深入)”;
while true 循环不断检查键盘缓冲区是否有可用的字符。kbhit() 函数检查键盘缓冲区中是否有字符。如果缓冲区中存在字符,函数返回一个非零值,否则返回 0。getch() 函数从键盘缓冲区读取单个字符或按键。如果是 ascii 字符,getch() 返回字符的 ascii 码;如果是功能键,getch() 返回 0 并将功能键的扫描码存储在 a 中。如果检测到功能键,代码会再次调用 getch() 函数获取功能键的第二个字节,然后将这两个字节组合成一个唯一的扫描码。最终返回扫描码或 ascii 码。
需要注意的是,msvcrt 库仅在 windows 系统上可用。如果您使用其他操作系统,可能需要使用其他库或方法来从键盘获取输入。
以上就是在 Python 中,如何使用 msvcrt 库从键盘实时读取按键?的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2185675.html