gpt4 book ai didi

Python 除了无

转载 作者:太空狗 更新时间:2023-10-29 20:59:01 25 4
gpt4 key购买 nike

使用“except None”是否有任何意想不到的副作用?我期望的行为是,一些小测试似乎证实了该子句不会捕获任何内容。

这是我正在尝试做的事情的粗略概述。当没有为函数提供参数时,exceptions=None 会创建“except None”子句。只是想仔细检查一下我不会捕捉到意外的东西。

# exceptions is exception or set of exceptions I want to do special processing for
def check_exceptions(exceptions=None)
try:
...
except exceptions as e:
...

最佳答案

在这里工作正常(在 Python 2.x 下)。

>>> try:
... foo
... except None as e:
... pass
...
Traceback (most recent call last):
File "<stdin>", line 2, in <module>
NameError: name 'foo' is not defined

For an except clause with an expression, that expression is evaluated, and the clause matches the exception if the resulting object is “compatible” with the exception. An object is compatible with an exception if it is the class or a base class of the exception object, or a tuple containing an item compatible with the exception.

source

因此表达式必须是异常类型,它永远不会匹配。

此行为在 Python 3.x 中已更改,except 之后的表达式必须是 BaseException 的后代或此类的元组。

关于Python 除了无,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19327320/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com