如果你做了这样的功能:
def show():
print(something)
你如何做到这一点,在任何输入上,如果用户输入一个特定的东西,这将被调用?我希望能够在用户需要时调用这样的多个函数。每次我要求输入时,我都必须将它作为一个选项吗?
编辑:对不起,这不是很清楚。假设我在游戏中有变量,比如钱。当我在游戏过程中要求输入时,输入是关于不相关的事情,我希望用户能够输入例如。 gold和show()函数将激活。然后输入将照常进行。如果不将它作为每个输入的选项,我是否能够做到这一点,例如。variable = input("type something")
if variable == "gold":
do stuff
elif variable == other things
do other things
答案 0 :(得分:2)
你的意思是这样的:
def thing1(): # Random command
print('stuff')
def thing2(): # Random command
print('More stuff')
def check(command):
'''Checks if the users command is valid else it does a default command'''
if command == 'thing1':
thing1()
elif command == 'thing2':
thing2()
else:
default_thing()
while True: # Loop going on forever
userinput = input('') # Lets the user input their command
check(userinput)
答案 1 :(得分:0)
您可以将所有功能都放在字典中:{"<some user input>":func_to_call}
并查看它是否与任何
类似的东西:
def gold():
print("gold")
input_options = {"gold":gold}
variable = input("type something:")
if variable in input_options:
input_options[variable]()