如何在Python中获取按下的键而不按回车?

3 投票
2 回答
17850 浏览
提问于 2025-04-16 08:51

我在这里看到了一个解决方案,但我不想等到按键被按下。我想要获取最后按下的那个键。

2 个回答

0

我觉得这是你需要的东西。

顺便说一下,我没注意到这是你之前拒绝的同一个解决方案……为什么呢?

编辑:

你知道吗:

from msvcrt import getch

这个只在Windows系统上有效,不过……
(在上面的链接中有更一般化的内容)
来自这里: http://www.daniweb.com/forums/thread115282.html

4

可能相关的问题会对你有帮助,正如 @S.Lott 提到的:在 Python 中检测哪些键被按下

我写这段话是想给你一些建议:别太担心这个。你想做什么样的程序呢?

在终端上运行的程序通常没有那种实时获取按键的界面,现在也不太需要。对于在终端上运行的程序,你应该关注如何设计一个实用的命令行用户界面,可以使用 optparse 或其他模块。

如果是交互式程序,你应该使用图形用户界面(GUI)库,为用户创建一个不错的界面,而不是自己重新发明轮子。你觉得哪种方式更好呢?用户点击一个图标,屏幕上弹出一个窗口,里面有几个按钮,还有一堆菜单选项放在“文件”菜单下,像其他窗口一样,还是打开一个黑色的终端,里面有80年代风格的文本界面,带着一些蓝色高亮的菜单选项?你可以使用 Tkinter 来制作简单的窗口应用,因为它在 Python + Windows 中是预装的,这样用户就不需要担心安装额外的库了。

简单说一下:任何需要用户界面的程序都应该使用 GUI 库,或者有一个网页界面。试图在终端上创建用户界面是浪费你和用户的时间——我们已经不是1989年了。

如果你真的需要一个文本界面,那就看看 ncurses 库吧,这比重新发明轮子要好得多。

撰写回答