如何制作不要求用户按[输入]进行选择的菜单?

我在Python中有一个菜单。那部分很简单。我raw_input()用来从用户那里进行选择。


问题是raw_input(和输入)要求用户Enter在选择后按下。有什么方法可以使该程序在按键时立即采取行动?到目前为止,这是我得到的:


import sys

print """Menu

1) Say Foo

2) Say Bar"""

answer = raw_input("Make a selection> ")


if "1" in answer: print "foo"

elif "2" in answer: print "bar"

拥有这样的东西真是太好了


print menu

while lastKey = "":

    lastKey = check_for_recent_keystrokes()

if "1" in lastKey: #do stuff...


慕莱坞森
浏览 180回答 4
4回答

斯蒂芬大帝

在Windows上:import msvcrt answer=msvcrt.getch()

MMMHUHU

哇,那花了永远。好的,这就是我最终得到的使用IDLE,Python附带的python ...东西...它很难失败。但是,一旦我在DOS(er,CMD.exe)中尝试了它作为一个真实程序,它就可以正常运行。除非您有任务管理器,否则没人会在IDLE中尝试它。我已经忘记了我如何生活在无法快速响应的菜单中。

aluckdog

msvcrt在IDLE中失败的原因是IDLE无法访问运行msvcrt的库。而当您在cmd.exe中本机运行程序时,它将很好地工作。出于同样的原因,您的程序在Mac和Linux终端上会崩溃。但是我想,如果您将要专门针对Windows使用此功能,则可以使用更多功能。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python