the*_*age 5 python exception-handling python-2.7
这是我之前遇到的一个简单问题。本质上,像这样和这样“忽略”异常的解决方案确实没有。即使它们不再使 python 崩溃,它们仍然会停止初始 try 子句中的任何代码。
try:
assert False
print "hello"
except AssertionError:
pass
Run Code Online (Sandbox Code Playgroud)
这段代码不会打印“hello”,而是跳过它,进入通行证。我的问题是,是否有一种简单的方法可以在 Python 2.7 中真正忽略这一点?我阅读了 3.4 中发生的一些事情以使这更容易,但我宁愿留在 python 2.7。
我不认为你可以,也不认为你应该这样做。
错误永远不应该悄无声息地过去。
除非明确沉默。Python之禅
这意味着作为程序员,您有责任思考异常可能出现在何处以及为何出现。您应该(实际上必须)避免在try
语句中放入很长的代码块然后考虑异常的诱惑。正确的思路是:
assert False
assert False
中try...except...
print 'Hello'
所以你的代码应该是这样的(其他答案也很好):
try:
assert False
except AssertionError:
pass
print 'Hello'
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
7909 次 |
最近记录: |