Ohg*_*nyo 0 python if-statement input python-3.x
所以说我必须阅读用户说的话,我的程序按照他们说的做。像这样的东西:
userinstructions = input('What action would you like me to do?')
if userinstructions == 'walk':
walk()
elif userinstructions == 'sleep':
sleep()
elif userinstructions == 'eat':
eat()
elif userinstructions == 'talk':
talk()
Run Code Online (Sandbox Code Playgroud)
现在,假设有数百种可能性,就像在现实生活中一样。我不想为可能数百个语句做 if 语句。有没有办法让它更快并且代码更少?就像一个循环或其他东西。我已经玩了一段时间,但我想不出任何东西。
您可以定义一个将字符串映射到函数的字典:
actions = {
'walk': walk,
'eat': eat,
}
userinstructions = input('What action would you like me to do?')
if userinstructions in actions:
actions[userinstructions]()
else:
print('Invalid action')
Run Code Online (Sandbox Code Playgroud)