为什么其他条件在python中同时执行两个条件?

问题描述 投票:1回答:3

如果我输入的数字大于或小于50,但在精确的数字50时工作正常,代码将执行两个语句。

当我删除声明时

if int(var2)==var1:
    print("equal")

然后程序运行正常。

这里是代码

var1 = 50
var2 = input("choose a number = ")

if int(var2)>var1:
    print("greater")

if int(var2)==var1:
    print("equal")
else:
    print("lesser")
python python-3.x pycharm
3个回答
1
投票

您需要将第二个if更改为elif

var1 = 50
var2 = input("choose a number = ")

if int(var2)>var1:
    print("greater")

elif int(var2)==var1:
    print("equal")
else:
    print("lesser")

0
投票

尝试以下操作

var1 = 50
var2 = input("choose a number = ")

if int(var2)>var1:
  print("greater")
elif int(var2)==var1:
  print("equal")
else:
  print("lesser")

这样,您就不会有两个单独的if块。


0
投票

如果int(var2)!= var1,则执行您的指令print("lesser"),如果int(var2)> var1,也将执行


0
投票

当添加一个if时,它将检查所有条件,直到您脱离条件并继续执行代码或使用其他条件。因此,这意味着在检查第一个时是否检查第二个是否。因此,如果第二个if使用elif。

© www.soinside.com 2019 - 2024. All rights reserved.