我是一名学习编程语言的学生,我决定选择Python,到目前为止我真的非常喜欢它。 我可能有一个愚蠢的问题,但我似乎无法找到解决方案,我写了一个程序的一部分,用户输入3个值。如果即使其中一个值破坏了一个陈述,它也应该打印出正确的答案。 这就是我的......
lengte = input("Wat is de lengte die u nodig hebt?")
breedte = input("Wat is de breedte die u nodig hebt?")
hoogte = input ("Wat is de hoogte die u nodig hebt?")
a = 140
aa = 100
aaa = 110
b = 220
bb = 115
bbb = 120
if(hoogte in range(a) and breedte in range(aa) and hoogte in range(aaa)):
print "Type A"
if(hoogte in range(a,b) or breedte in range(aa,bb) or hoogte in range(aaa,bbb)):
print "Type B"
但是当我给170用于hoogte和40,40用于gente和hoogte它仍然打印出来" A型和#34;在我的眼里它应该说" B"因为该值超过aa但是低于bb ..
任何帮助都会受到赞赏,对不起,如果这看起来像是" noob"问题..但是,我对此很陌生。
答案 0 :(得分:1)
可能是你错误输入了第一个条件。你键入hoogte,但它可能是lengte。
if(lengte in range(a) and breedte in range(aa) and hoogte in range(aaa)):
print "Type A"
if(lengte in range(a,b) or breedte in range(aa,bb) or hoogte in range(aaa,bbb)):
print "Type B"
第一个条件逻辑只会打印"类型A"如果所有条件都是真的,那么第二个将打印"类型B"如果至少有一个条件成立。
答案 1 :(得分:-1)
问题是你指定a,aa,aaa等作为范围,但你没有给出范围。因此,使用==运算符来测试您的输入是否等于您指定的任何变量。
这对我有用。
lengte = input("Wat is de lengte die u nodig hebt?")
breedte = input("Wat is de breedte die u nodig hebt?")
hoogte = input ("Wat is de hoogte die u nodig hebt?")
a = 140
aa = 100
aaa = 110
b = 220
bb = 115
bbb = 120
if(hoogte ==a and breedte == aa and hoogte == aaa):
print "Type A"
if(hoogte ==a,b or breedte == aa,bb or hoogte == aaa,bbb):
print "Type B"