当我输入大于1.0的分数时,最后一个else语句将不会执行,并且不会打印“Value out of range”行。 代码如下:
score = float(raw_input("Enter Score: "))
if score>= 0.0:
if score <= 1.0:
if score >= 0.9:
print 'A'
elif score >= 0.8:
print 'B'
elif score >= 0.7:
print 'C'
elif score >= 0.6:
print 'D'
else:
print 'F'
else:
print 'Value out of range'
答案 0 :(得分:1)
if score >= 0.0 and score <= 1.0:
if score >= 0.9:
print 'A'
elif score >= 0.8:
print 'B'
elif score >= 0.7:
print 'C'
elif score >= 0.6:
print 'D'
else:
print 'F'
else:
print 'Value out of range'
或者,
if score>= 0.0:
if score <= 1.0:
if score >= 0.9:
print 'A'
elif score >= 0.8:
print 'B'
elif score >= 0.7:
print 'C'
elif score >= 0.6:
print 'D'
else:
print 'F'
else:
print 'Value out of range'
答案 1 :(得分:0)
这是因为你的其他人属于&#34;得分&gt; = 0.0&#34;而不是&#34;得分&lt; = 1.0&#34;条款。 这由python中的缩进表示。
答案 2 :(得分:0)
您已将“else”语句设置为错误的“if” 再看看代码。
在python缩进中,块是用空格构成的,所以你必须小心它。
如果你有使用任何其他编程语言的经验就像你将代码置于外部的“{}”内部,使用支持缩进的语言
答案 3 :(得分:-1)
因为score = 1.0 >= 0.0 == True
尝试改为:
if score >= 0.0 and score < 1.0: