加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

我在哪里可以找到Python内置函数引发的异常?

发布时间:2020-12-20 12:00:36 所属栏目:Python 来源:网络整理
导读:我正在写一个装饰器来验证一些功能.我尝试尽可能地使用内置函数来完成繁重的工作,但是我一直在坚持选择使用它时应该捕获的异常. 例如: def Validated(fun): def ValidatedFun(*args,**kwargs): try: _ = dict(kwargs.get('untrusted_data',())) except ? as
我正在写一个装饰器来验证一些功能.我尝试尽可能地使用内置函数来完成繁重的工作,但是我一直在坚持选择使用它时应该捕获的异常.

例如:

def Validated(fun):
    def ValidatedFun(*args,**kwargs):
        try:
            _ = dict(kwargs.get('untrusted_data',()))
        except ? as e:
            raise BetterError('Additional relevant info') from e
        return fun(*args,**kwargs)
    return ValidatedFun

我想知道:

> dict(和其他内置函数)明确提出的最常见的异常是什么?
>我在哪里可以找到列出它们的文档? (他们不上
https://docs.python.org/)

解决方法

所有Python标准类型都遵循一些默认异常的约定.行为记录为 for the exceptions,而不是类型.

对于dict,例外是TypeErrorValueError.此时可以引发其他异常,但这些异常不依赖于输入(MemoryError和KeyboardInterrupt).

TypeError表示不支持传入的对象类型; dict documentation文档接受哪些类型(映射或可迭代对象),其他一切都是引起异常的原因.接受的类型必须符合某些期望;如果不满足这些,则引发ValueError(正确的类型,但值是错误的).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读