gpt4 book ai didi

python - "Exception"是否捕获所有其他 "Concrete Exceptions"

转载 作者:太空宇宙 更新时间:2023-11-03 17:34:05 27 4
gpt4 key购买 nike

我在运行 Streaming API 时遇到了 tweepy 问题,但我的问题不仅仅与 tweepy 直接相关。

我遇到了多个异常,我认为我可以暂时“捕获/通过”,作为临时解决方案,直到找出问题所在。

到目前为止,tweepy 已经抛出了 5 个不同的错误(IncompleteRead、ProtocolError、UnicodeDecodeError、AttributeError、TypeError),它们都是由 API 的过滤器产生的,而不是由我获取数据。

它们在回溯中的共同点是:

twitterStream.filter(locations=[-125.22, 31.61, -104.86, 49.0, -104.86, 26.11, -66.94, 49.03])

IncompleteReadProtocolError 与 tweepy 使用的不同包相关。但是 (UnicodeDecodeError, AttributeError, TypeError)Concrete Exceptions

我的问题:

我的假设是否正确? Exception基类可以捕获所有这些(最后 3 个)吗?还是说这是不正确的?

最佳答案

异常状态的文档

All built-in, non-system-exiting exceptions are derived from this class

因此 Exception 基类应该能够捕获这些异常,因为它们是非系统退出的(系统退出异常的一个示例是 SystemExit)。如果您愿意,可以快速测试:

try:
raise AttributeError
except Exception:
print("We caught an exception!")

也就是说,盲目捕获 Exception 基类通常被认为是一个坏主意,因为您可能最终会捕获您不希望捕获的异常。

关于python - "Exception"是否捕获所有其他 "Concrete Exceptions",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31466753/

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