我需要在 python 中创建一个程序/游戏,其中用户快速输入 2 个键,例如 z 或 x 键,这使得他们的角色每次按正确的顺序按下时都会向前移动。我做了很多研究,并决定我应该使用 msvcrt.getch() 来接收输入,但每当我尝试它时,它都会将输入存储为我无法使用的字节,我对编程相对较新,可以使用一些帮助来解释该功能。
最佳答案
您需要将返回值解码为str
对象:
msvcrt.getch().decode('ASCII')
例如, 会将字节解释为 ASCII 代码点。您可能需要根据键盘布局和区域设置使用不同的编码,但根据文档,msvcrt.getch()
API 仅处理 ASCII 字符:
The module implements both the normal and wide char variants of the console I/O api. The normal API deals only with ASCII characters and is of limited use for internationalized applications. The wide char API should be used where ever possible.
您可能想使用 msvcrt.getwch()
而不是直接获取 Unicode 值;该方法不仅支持 ASCII 代码点。
关于python - 如何使用 msvcrt.getch 提取和使用输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15599565/