Python总是打印忽略Elif的第一条语句

时间:2018-12-07 10:49:20

标签: python-3.x if-statement

这是我的第一个应用程序,也是我的第一个StackOverflow帖子。很高兴您在那里!

我的问题是我的应用程序忽略了省略号,并假定第一个IF总是正确的。

print("Gimme unit ID" )
unitid = input()
unitid = int(unitid)
service = ""
if unitid>= 100:
    service= "SuperOne"
elif unitid>= 10000:
    service= "Suprer10K"
elif unitid>= 30000:
    service= "Amazing30K"
elif unitid>= 40000:
    service= "SuperAsom40k"
elif unitid>= 50000:
    service= "SuperAmazing60k"
elif unitid>= 70000:
    service= "New"
else:
    print("Please validate unit id.")
print(f"Your service is called {service}")

即使您写了35000之类的内容,它始终会打印“您的服务称为SuperOne”。

你能帮忙吗?

2 个答案:

答案 0 :(得分:2)

您应该按降序编写ifs。例如:

    numpy.sum(rez,axis = 1) 

以此类推。

答案 1 :(得分:1)

if的相反顺序。

大于40000的事物也大于100,因此将使用首个比赛。

if unitid>= 70000:
   service= "New"
elif unitid>= 50000:
   service= "SuperAmazing60k"
elif unitid>= 40000:
    service= "SuperAsom40k"
...