当我输入A来响应以下python代码时
def Choice():
d1 = input(*question*)
if d1 == 'A':
print(*response*)
if d1 == 'B':
print(*response*)
else:
print(*response*)
Choice()
我得到了A的响应,但是我也得到了'else:'语句的响应。但是,当我输入B作为响应时,我得到的答案没有对'else:'语句的响应。
有人知道发生了什么吗?
答案 0 :(得分:0)
您应该使用elif
def Choice():
d1 = input(*question*)
if d1 == 'A':
print(*response*)
elif d1 == 'B':
print(*response*)
else:
print(*response*)
Choice()
如果您的代码是d1 == 'A'
,则发生什么情况;如果是d1 !='B'
,它将转到下一个,因此它将到达else并为'A'和else条件打印语句。
如果使用elif,如果d1不是'A'或'B',则只有d1会处于其他条件
答案 1 :(得分:0)
在您的代码中,您使用的是if else
语句,else链接到最近的最 if语句。
因此,代码中发生的事情是,每当您输入“ A”作为输入时,将执行第一个if语句,然后检查条件是否为 false 的另一个if语句以及相应的else被执行。
但是输入'B'并非如此。如果在第一个if之后写另一个语句,则会发生相同的情况,因为在else
之后没有if
语句,它将转到另一个成立的if
语句。>
要进行反击,可以使用if elif else
概念。
您可以关注Nihal所做的事情。