menu
1. Plot Graph
2. Exit/Quit
当用户输入1时,
此代码将被运行,因此,当用户输入1并打印某些内容时,如何在用户按1时运行以下代码
答案 0 :(得分:0)
menu = raw_input("Please choose a operation from the menu:")
if menu == '1':
run_the_code()
elif menu == '2':
exit_the_code()
else:
print "No such option!"
这是你想要的吗?用户必须按Enter才能继续。
答案 1 :(得分:0)
将所有代码放在main()
函数中。无需按Enter键,它会读取按下的键。
import msvcrt
option = msvcrt.getch()
if option == '1':
main()
else:
exit()
答案 2 :(得分:0)
通过将键作为选项存储并将值存储为要执行的函数的引用,也可以使用python词典执行此操作。这在提供许多选项时是首选,因为它消除了设置所有if语句的需要,并且使选项的添加或删除更容易。另外我相信我在某个地方阅读它更有效但我不确定这是否真的如此。而且因为它更简单,所以更加pythonic!
创建像你要求的菜单的代码看起来像这样。
options = { 1 : run_code,
2 : dont_run_code,
}
user_input = raw_input("1 or 2")
options[user_input]()
这当然意味着您必须将代码放在一个函数中(为此,语法看起来像这样)
def function(parameters):
do stuff
注意字典中如何在没有()
的情况下存储函数。这样做是因为没有括号它是对函数本身的引用(如果你执行打印,你会看到它给你内存地址),函数将执行括号。然后,您只需通过将括号添加到二进制查找(如options[user_input]()
注意:在其他语言中,我建议查看一个switch语句,但python却没有。