ace*_*ana 4 exception python-2.7
在使用 try/ except 进行异常处理时,是否可以像我下面所做的那样包含布尔表达式?
例如:
while True:
try:
grade = float(input('Please enter your your score:'))
break
except ValueError:
print('Please enter a numeric value, you dingus!')
except (grade > 1):
print('Not a valid number, please re-enter:')
except NameError:
print('Please enter a numeric value, you dingus!')
Run Code Online (Sandbox Code Playgroud)
我希望字符串输入由“NameError 除外”处理。我希望通过打印“不是有效数字,请重新输入:”来处理大于 1 的数字
程序按原样处理字符串和有效的数字输入。但是,当我输入大于 1 的数字时,程序会接受我的输入,并且不执行任何其他操作。不执行任何 except 命令,并且不会将任何内容传递给此异常处理代码段下方的函数。程序只是停止并且没有给出错误以帮助调试。
试一试:
while True:
try:
grade = float(input('Please enter your your score:'))
if grade > 1:
raise ValueError
except ValueError:
print('Not a valid number, please re-enter.')
except NameError:
print('Please enter a numeric value, you dingus!')
except SyntaxError:
print('Please enter something, anything!?')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7368 次 |
| 最近记录: |