我需要在 python 中创建一个程序(游戏),用户可以快速输入 2 个键,例如 z 或 x,这使得他们的角色每次按正确的顺序按下时都会向前移动。我做了很多研究,并决定我应该使用
msvcrt.getch()
来接收输入,但每当我尝试它时,它都会将输入存储为我无法使用的字节。我对编程比较陌生,需要一些帮助来解释这个功能。
您需要将返回值解码为
str
对象:
msvcrt.getch().decode('ASCII')
例如,会将字节解释为 ASCII 代码点。您可能需要根据键盘布局和区域设置使用不同的编码,但根据文档,
msvcrt.getch()
API 仅处理 ASCII 字符:
该模块实现了控制台 I/O api 的普通字符和宽字符变体。普通 API 仅处理 ASCII 字符,对于国际化应用程序的用途有限。应尽可能使用宽字符 API。
msvcrt.getwch()
来直接获取 Unicode 值;该方法不仅支持 ASCII 代码点。