Python 如何修改此代码 score=原始输入(“输入分数:uuuuuuuu(介于0.0和1.0之间)”) 尝试: y=浮动(分数) 除: 打印“键入数字” 尝试: 如果y>1或y=0.9: 打印“A” elif y>=.8: 打印“B” elif y>=.7: 打印“C” elif y>=.6: 打印 其他: 打印“F”
我试图消除用户的无效输入。使用此代码,如果输入不在(0,1)中,结果显示“不在分数范围内”,这是好的 但是,当输入不是数字时,结果显示“键入数字”和“不在分数范围内”Python 如何修改此代码 score=原始输入(“输入分数:uuuuuuuu(介于0.0和1.0之间)”) 尝试: y=浮动(分数) 除: 打印“键入数字” 尝试: 如果y>1或y=0.9: 打印“A” elif y>=.8: 打印“B” elif y>=.7: 打印“C” elif y>=.6: 打印 其他: 打印“F”,python,Python,我试图消除用户的无效输入。使用此代码,如果输入不在(0,1)中,结果显示“不在分数范围内”,这是好的 但是,当输入不是数字时,结果显示“键入数字”和“不在分数范围内” 我希望它只显示“键入一个数字”。谁能告诉我怎么做?我正在考虑使用“elif”,但不知道如何处理它。您只需添加一个标志变量即可: score = raw_input("Enter Score:___ (between 0.0 and 1.0)") try: y = float(score) except: print
我希望它只显示“键入一个数字”。谁能告诉我怎么做?我正在考虑使用“elif”,但不知道如何处理它。您只需添加一个
标志
变量即可:
score = raw_input("Enter Score:___ (between 0.0 and 1.0)")
try:
y = float(score)
except:
print 'Type a Number'
try:
if y > 1 or y < 0:
y = 'Not in Score Range'
x = int(y)
except:
print 'Not in Score Range'
else:
if y >= 0.9:
print 'A'
elif y >= .8:
print 'B'
elif y >= .7:
print 'C'
elif y >= .6:
print 'D'
else:
print 'F'
试一试。。。except语句有一个可选的else子句,当它出现时,必须在所有except子句之后。如果try子句没有引发异常,那么它对于必须执行的代码非常有用。例如:
资料来源:
如有任何问题,请发表评论
希望有帮助:)您只需添加一个
标志
变量即可:
score = raw_input("Enter Score:___ (between 0.0 and 1.0)")
try:
y = float(score)
except:
print 'Type a Number'
try:
if y > 1 or y < 0:
y = 'Not in Score Range'
x = int(y)
except:
print 'Not in Score Range'
else:
if y >= 0.9:
print 'A'
elif y >= .8:
print 'B'
elif y >= .7:
print 'C'
elif y >= .6:
print 'D'
else:
print 'F'
试一试。。。except语句有一个可选的else子句,当它出现时,必须在所有except子句之后。如果try子句没有引发异常,那么它对于必须执行的代码非常有用。例如:
资料来源:
如有任何问题,请发表评论
希望它能有所帮助:)我个人更喜欢在没有标志的情况下工作,只需将其包装在函数中即可
score = raw_input("Enter Score:___ (between 0.0 and 1.0)")
try:
y = float(score)
except:
print 'Type a Number'
else:
try:
if y > 1 or y < 0:
y = 'Not in Score Range'
x = int(y)
except:
print 'Not in Score Range'
else:
if y >= 0.9:
print 'A'
elif y >= .8:
print 'B'
elif y >= .7:
print 'C'
elif y >= .6:
print 'D'
else:
print 'F'
def get_分类器():
分数=原始输入(“输入分数:\在0.0和1.0之间)”
尝试:
分数=浮动(分数)
除:
打印('键入一个数字')
一无所获
如果不是0。8:
返回“B”
elif y>=.7:
返回“C”
elif y>=.6:
返回'D'
其他:
返回“F”
#不断询问,直到给出正确的号码
a=获取分类器()
而a==无:
a=获取分类器()
印刷品(a)
我个人更喜欢在没有标志的情况下工作,只需将其包装到函数中即可
score = raw_input("Enter Score:___ (between 0.0 and 1.0)")
try:
y = float(score)
except:
print 'Type a Number'
else:
try:
if y > 1 or y < 0:
y = 'Not in Score Range'
x = int(y)
except:
print 'Not in Score Range'
else:
if y >= 0.9:
print 'A'
elif y >= .8:
print 'B'
elif y >= .7:
print 'C'
elif y >= .6:
print 'D'
else:
print 'F'
def get_分类器():
分数=原始输入(“输入分数:\在0.0和1.0之间)”
尝试:
分数=浮动(分数)
除:
打印('键入一个数字')
一无所获
如果不是0。8:
返回“B”
elif y>=.7:
返回“C”
elif y>=.6:
返回'D'
其他:
返回“F”
#不断询问,直到给出正确的号码
a=获取分类器()
而a==无:
a=获取分类器()
印刷品(a)
要添加另一个变体,您可以区分不同的异常。对于这个问题来说,这可能有点过头了,但我认为总的来说,这更优雅:
def get_classifier():
score = raw_input("Enter Score:___ (between 0.0 and 1.0)")
try:
score = float(score)
except:
print('Type a Number')
return None
if not 0. <= score <= 1.:
print('Not in Score Range')
return None
if y >= 0.9:
return 'A'
elif y >= .8:
return 'B'
elif y >= .7:
return 'C'
elif y >= .6:
return 'D'
else:
return 'F'
# Continuously ask until correct number was given
a = get_classifier()
while a == None:
a = get_classifier()
print(a)
class OutOfRangeException(异常):
通过
def stringToScore(字符串):
x=浮动(字符串)
如果不是(0=0.9:
打印“A”
elif y>=.8:
打印“B”
elif y>=.7:
打印“C”
elif y>=.6:
打印
其他:
打印“F”
除值错误外:
打印“键入数字”
除OutofRange例外:
打印“不在分数范围内”
要添加另一个变体,您可以区分不同的异常。对于这个问题来说,这可能有点过头了,但我认为总的来说,这更优雅:
def get_classifier():
score = raw_input("Enter Score:___ (between 0.0 and 1.0)")
try:
score = float(score)
except:
print('Type a Number')
return None
if not 0. <= score <= 1.:
print('Not in Score Range')
return None
if y >= 0.9:
return 'A'
elif y >= .8:
return 'B'
elif y >= .7:
return 'C'
elif y >= .6:
return 'D'
else:
return 'F'
# Continuously ask until correct number was given
a = get_classifier()
while a == None:
a = get_classifier()
print(a)
class OutOfRangeException(异常):
通过
def stringToScore(字符串):
x=浮动(字符串)
如果不是(0=0.9:
打印“A”
elif y>=.8:
打印“B”
elif y>=.7:
打印“C”
elif y>=.6:
打印
其他:
打印“F”
除值错误外:
打印“键入数字”
除OutofRange例外:
打印“不在分数范围内”
谁曾否决过这个问题。你能解释一下原因吗。这也将有助于其他观众。他们曾经对这个问题投过反对票。你能解释一下原因吗。它也将帮助其他观众。我想建议如果不是0.0@workfartiz,我也不太喜欢旗子方法!我也将我的答案更新为flagless way。我想你会喜欢的。例外:
应该是例外:
谢谢。明天学习课程的函数部分后,我会回来看看我是否能理解它。我想建议如果不是0.0@workfartiz,我也不太喜欢flag方法!我也将我的答案更新为flagless way。我想你会喜欢的。例外:
应该是例外:
谢谢。明天学习课程的函数部分后,我会回来看看我是否能理解它。尼斯,从不知道try…除了
有一个可选的else子句。该标志看起来可能不像其他标志那样“酷”,但它向我展示了一种使用赋值的新方法。第二次尝试…除了…其他也很有帮助。谢谢。我真的很高兴它帮了我的忙:)很好,我从来不知道try…除了
有一个可选的else子句。这个标志看起来可能不像其他标志那样“酷”,但它向我展示了一种使用赋值的新方法。第二次尝试…除了…其他也很有帮助。谢谢。我真的很高兴它起了作用:)