python忽略异常的方法

python忽略异常的方法
python忽略异常的方法

1、try except

忽略异常的最常见方法是使用语句块try except,然后在语句 except 中只有 pass。

import contextlib
 
 
class NonFatalError(Exception):
    pass
 
 
def non_idempotent_operation():
    raise NonFatalError(
        'The operation failed because of existing state'
    )
 
 
try:
    print('trying non-idempotent operation')
    non_idempotent_operation()
    print('succeeded!')
except NonFatalError:
    pass
 
print('done')
 
# output
# trying non-idempotent operation
# done

在这种情况下,操作失败并忽略错误。

2、contextlib.suppress()

try:except 可以被替换为 contextlib.suppress(),更明确地抑制类异常在 with 块的任何地方发生。

import contextlib
 
 
class NonFatalError(Exception):
    pass
 
 
def non_idempotent_operation():
    raise NonFatalError(
        'The operation failed because of existing state'
    )
 
 
with contextlib.suppress(NonFatalError):
    print('trying non-idempotent operation')
    non_idempotent_operation()
    print('succeeded!')
 
print('done')
 
# output
# trying non-idempotent operation
# done

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注