在这个程序中使用 try 和 except in this python
Use of try and except in this python in this program
你能告诉我为什么在下面的代码中使用try和except吗?
为什么得分=-1?我的意思是为什么只有 -1
inp = input('Enter score: ')
try:
score = float(inp)
except:
score = -1
if score > 1.0 or score < 0.0:
print ('Bad score')
elif 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')
我们不能使用以下没有 try 和 except 命令的代码吗?
score = float(input('Enter score: '))
if score > 1.0 or score < 0.0:
print ('Bad score')
elif 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')
如果用户输入无法转换为浮点数的内容,程序将异常停止。 try
捕捉到这一点并使用默认值。
这可行:
inp = input('Enter score: ')
try:
score = float(inp)
except ValueError:
print('bad score')
您的版本:
score = float(input('Enter score: '))
if score > 1.0 or score < 0.0:
print ('Bad score')
例如,如果用户输入 abc
, 将在此行 float(input('Enter score: '))
上抛出 ValueError
。你的程序会在你打印 Bad score'
.
之前停止
存在 try-except 块是因为用户可能输入的内容不是有效的浮点数。例如,"none"。在这种情况下,python 将抛出 ValueError
。使用不受限制的 except
是非常糟糕的风格,所以代码应该是
try:
score = float(inp)
except ValueError:
score = -1
它被设置为 -1
因为代码的其余部分将负分视为非法输入,所以任何非法的东西都会在不终止程序的情况下得到理解。
你能告诉我为什么在下面的代码中使用try和except吗? 为什么得分=-1?我的意思是为什么只有 -1
inp = input('Enter score: ')
try:
score = float(inp)
except:
score = -1
if score > 1.0 or score < 0.0:
print ('Bad score')
elif 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')
我们不能使用以下没有 try 和 except 命令的代码吗?
score = float(input('Enter score: '))
if score > 1.0 or score < 0.0:
print ('Bad score')
elif 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')
如果用户输入无法转换为浮点数的内容,程序将异常停止。 try
捕捉到这一点并使用默认值。
这可行:
inp = input('Enter score: ')
try:
score = float(inp)
except ValueError:
print('bad score')
您的版本:
score = float(input('Enter score: '))
if score > 1.0 or score < 0.0:
print ('Bad score')
例如,如果用户输入 abc
, 将在此行 float(input('Enter score: '))
上抛出 ValueError
。你的程序会在你打印 Bad score'
.
存在 try-except 块是因为用户可能输入的内容不是有效的浮点数。例如,"none"。在这种情况下,python 将抛出 ValueError
。使用不受限制的 except
是非常糟糕的风格,所以代码应该是
try:
score = float(inp)
except ValueError:
score = -1
它被设置为 -1
因为代码的其余部分将负分视为非法输入,所以任何非法的东西都会在不终止程序的情况下得到理解。