Python初学者:我想从用户那里获取输入,并根据输入执行多个函数:
def func1():
'This is function 1'
def func2():
'This is function 2'
def func3():
'This is function 3'
funcDict = {'A': func1, 'B': func2, 'C':func3}
response = raw_input()
因此,如果用户输入字符串' A,B' ,func1和func2将被执行
答案 0 :(得分:1)
您可以使用您的响应来检查该值是否在响应中,您可以通过使用if语句检查A,B或C是否在字符串中来执行此操作。
If "A" in response:
func1()
If "B" in response:
func2()
If "C" in response:
func3()
答案 1 :(得分:0)
这样做的方法很少。 第一步是验证用户输入。 这可以通过检查用户输入的所有字母是否都在funcDict中来完成。
commands = response.split(",") # Split string on "," and return a list
valid = all([i in functDict for i in commands]) # check all commands are in funcDict
然后你可以迭代命令并执行相应的功能。
for command in commands:
funcDict[command]()