我在方法中使用if,elif,else语句。当我运行代码时,它不运行if、elif或else,但当我注释掉elif语句时,它默认为else。在def message(response):
args.pop(0)
if com_text == "trivia":
# triviaActive will be False
if triviaActive:
# Performs action
return True
# args[0].lower() is not equal to 'start'
elif args[0].lower() == "start" and not triviaActive:
# Performs action
return True
# So it should defaults to this else
else:
# Performs action
return True
我在if、elif和else语句链的上方添加了一些注释,这些语句给了我意想不到的结果。它没有像在这种情况下那样默认使用else语句,而是从方法返回而不运行方法的其余部分。我甚至尝试在if、elif和else语句中使用print语句,但是程序没有运行它们。在
(编辑)
我简化了我的if、elif和else。即使是这个简化版,我的elif还是有问题。我还想提到,我使用pop方法从args中弹出一个值,并使其为空,这可能是问题所在。在