我启动我的python脚本询问用户他们想做什么?
def askUser():
choice = input("Do you want to: \n(1) Go to stack overflow \n(2) Import from phone \n(3) Import from camcorder \n(4) Import from camcorder?");
print ("You entered: %s " % choice);
我想:
有关如何以pythonic方式执行此操作的任何提示?
答案 0 :(得分:3)
首先,python :)中不需要分号(yay)。
使用字典。另外,要获得几乎肯定在1-4之间的输入,请使用while
循环继续请求输入,直到1-4为止:
def askUser():
while True:
try:
choice = int(input("Do you want to: \n(1) Go to stack overflow \n(2) Import from phone \n(3) Import from camcorder \n(4) Import from camcorder?"))
except ValueError:
print("Please input a number")
continue
if 0 < choice < 5:
break
else:
print("That is not between 1 and 4! Try again:")
print ("You entered: {} ".format(choice)) # Good to use format instead of string formatting with %
mydict = {1:go_to_stackoverflow, 2:import_from_phone, 3:import_from_camcorder, 4:import_from_camcorder}
mydict[choice]()
我们在这里使用try/except
语句来显示输入是否不是数字。如果不是,我们使用continue
从头开始启动while循环。
.get()
使用您提供的输入从mydict
获取值。当它返回一个函数时,我们之后放()
来调用函数。