a=27
b=16
if a > b:
print('a is greater than b')
elif a > b + 10:
print('a is greater than b by 10')
elif a == b:
print('a is equal to b')
else:
print('a is less than b')
以上是我使用的代码行。在此仅第二行
print('a is greater than b by 10')
没有按照我的想法工作,而是抛出了
的输出(if a > b:
print('a is greater than b')
为什么会这样。由于A
的输入比B
大10
,为什么它不提供该条件的输出?
答案 0 :(得分:0)
您正在使用if-elif-else。首先,您的代码将检查是否满足 if 条件。如果满足,它将在if块中运行代码。如果不满足该条件,则仅检查elif条件。在您的情况下,A大于B。因此,满足 if 条件。它不会检查elif a > b + 10
条件。
如果您要首先检查该条件(您希望输出“ a大于b乘以10”,这似乎是您实际想要的),则可以将代码更改为以下内容:
a=27
b=16
if a > b + 10:
print('a is greater than b by 10')
elif a > b:
print('a is greater than b')
elif a == b:
print('a is equal to b')
else:
print('a is less than b')
输出:
a比b大10
如果要同时检查两个条件,则可以使用两个if语句。代码如下:
a=27
b=16
if a > b + 10:
print('a is greater than b by 10')
elif a > b:
print('a is greater than b')
elif a == b:
print('a is equal to b')
else:
print('a is less than b')
输出:
a比b大10
a大于b
如果仅在另一个满足条件时才希望对其进行检查,请尝试嵌套这些if语句。
a=27
b=16
if a > b:
if a > b + 10:
print('a is greater than b by 10')
else:
print('a is greater than b')
elif a == b:
print('a is equal to b')
else:
print('a is less than b')
输出:
a比b大10
P.S。您应该尝试了解有关if-elif-else语句及其实际工作方式的更多信息。您可以在线找到一些出色的教程,它们将为您提供帮助。