Python if/elif/else语句不';不要随意选择
无论输入是什么,始终使用else语句。为什么 我知道不会那么难,但我刚开始说:)你应该做到:Python if/elif/else语句不';不要随意选择,python,python-3.x,if-statement,Python,Python 3.x,If Statement,无论输入是什么,始终使用else语句。为什么 我知道不会那么难,但我刚开始说:)你应该做到: 如果(r in('7,8','7.8','78'))和(问题1=='cbca'):您将问题1声明为列表。在其上应用random.choice不会更改其值,因此以后它仍然是一个列表。将random.choice的结果放入一个变量中,并比较此变量 import random print('hello') question1 = [' cbca', ' cbbca'] print("What's equ
如果(r in('7,8','7.8','78'))和(问题1=='cbca'):您将
问题1
声明为列表。在其上应用random.choice
不会更改其值,因此以后它仍然是一个列表。将random.choice
的结果放入一个变量中,并比较此变量
import random
print('hello')
question1 = [' cbca', ' cbbca']
print("What's equal to" + random.choice(question1) + "?")
r = input()
if r in ('7,8', '7.8', '78') and question1 == ' cbca' :
print("That's correct!")
elif r in ('1', '1,0') and str(question1) == ' cbbca' :
print("That's correct!")
else :
print('r')
关于“休息”有什么进展吗?如果没有a,很难弄清楚你在问什么。对不起,elseNote总是说,你实际上没有将列表中的随机选择存储在任何地方;而且不可避免地
str(['cbca','cbbca'])!='cbca'
。检查您在if
和elif
中使用的相等条件。这就是你的答案。问题1
是一个列表,因此永远不能等于“cbca”
或“cbbca”
。想解释一下原因吗?因为在启动python时,计算“r in('7,8','7.8','78')”,在它之后计算“r in('7,8','7.8','78')和问题1”,在“r in('7,8','7.8','78')和问题1='cbca')。这是错误的,因为question1
是一个列表,而不是字符串。这并不能解决OP的问题。解释也是错误的。谢谢,现在它可以工作了!
import random
print('hello')
question1 = [' cbca', ' cbbca']
question = random.choice(question1) # Remember the choice of random
print("What's equal to" + question + "?")
r = input()
if r in ('7,8', '7.8', '78') and question == ' cbca' :
print("That's correct!")
elif r in ('1', '1,0') and question == ' cbbca' :
print("That's correct!")
else :
print('r')