python3在类型注释上引发属性错误

zzz777

一些背景信息:我正在使用mypy_protobuf包。出于类型检查的目的,它将生成.pyi文件,并且对于模块mmm中的每个枚举包装器Xxx都将生成类型mmm.XxxValue。所以我有一个功能。

def aaa(aaa: mmm.XxxValue) -> None:

它通过了mypy检查。当我开始执行程序时,在导入模块python3时会引发AttributeError,因为mmm没有XxxValue,这是正确的,但是我希望python3可执行文件会忽略注释。

威姆

PEP 3107说:

就像默认值一样,在执行函数定义时将评估所有注释表达式。

因此,期望python3可执行文件会简单地忽略注释是不正确的。在您的情况下,将对它们进行评估并将结果存储在aaa.__annotations__映射中。

但是,从Python 3.7开始,您可以使用将来的语句来推迟评估:

from __future__ import annotations

现在,它们将以__annotations__字符串形式存储在映射中。在Python 3.10中,这将成为默认行为。PEP 563中的详细信息

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Python 3.x多行注释引发语法错误

来自分类Dev

为什么打字稿会引发错误消息:类型上不存在属性?

来自分类Dev

TypeScript引发错误“类型'Data'上不存在属性'breadcrumb'”。

来自分类Dev

Python3 Pygame:draw.circle的元组类型错误

来自分类Dev

Python3,可被三整除,类型错误

来自分类Dev

类型错误:“int”对象不可下标 - Python3

来自分类Dev

PYTHON3:如何使用稍后为函数注释定义的类型?

来自分类Dev

如何在 python3 中对 tensorflow.Session() 进行类型注释

来自分类Dev

带有abc的Python3抽象类多重继承引发错误

来自分类Dev

d3.js引发错误:transition()上<g>属性transform =“ null”的值无效

来自分类Dev

x 具有类型函数,但调用 x 会出现类型错误 Python3

来自分类Dev

Python3:ftp文件上传引发TypeError:类型str不支持缓冲区API

来自分类Dev

Python3 AskOpenFileName错误

来自分类Dev

Python3 AskOpenFileName错误

来自分类Dev

TypeScript stepUp 方法在输入类型编号上引发错误

来自分类Dev

python3上的UnicodeDecodeError

来自分类Dev

Cygwin上的Python3

来自分类Dev

为什么Gradle在缺少的项目属性上引发错误

来自分类Dev

Python3类型系统:在参数中调用特定属性?

来自分类Dev

试图通过pyglet_ffmpeg在Debian 10错误上使用Python3上的街机库

来自分类Dev

Ubuntu上的Python3在help()命令上给出错误

来自分类Dev

在Python3中设置函数错误:列表是不可散列的类型

来自分类Dev

错误:TypeError:ColumnClause类型的对象不是JSON可序列化的Python3

来自分类Dev

Python3 Sha256:类型错误:对象支持所需的缓冲区 API

来自分类Dev

类型错误:需要一个类似字节的对象,而不是“int”python3

来自分类Dev

python3:类型错误:需要类似字节的对象,而不是“str”

来自分类Dev

不会引发Python3抽象类TypeError

来自分类Dev

我从地带收到此错误消息:[.gnu.build.attributes]:损坏的GNU构建属性注释:错误的注释类型:错误的值

来自分类Dev

如何修复错误“ AttributeError:'模块'对象在python3中没有属性'客户端'?

Related 相关文章

  1. 1

    Python 3.x多行注释引发语法错误

  2. 2

    为什么打字稿会引发错误消息:类型上不存在属性?

  3. 3

    TypeScript引发错误“类型'Data'上不存在属性'breadcrumb'”。

  4. 4

    Python3 Pygame:draw.circle的元组类型错误

  5. 5

    Python3,可被三整除,类型错误

  6. 6

    类型错误:“int”对象不可下标 - Python3

  7. 7

    PYTHON3:如何使用稍后为函数注释定义的类型?

  8. 8

    如何在 python3 中对 tensorflow.Session() 进行类型注释

  9. 9

    带有abc的Python3抽象类多重继承引发错误

  10. 10

    d3.js引发错误:transition()上<g>属性transform =“ null”的值无效

  11. 11

    x 具有类型函数,但调用 x 会出现类型错误 Python3

  12. 12

    Python3:ftp文件上传引发TypeError:类型str不支持缓冲区API

  13. 13

    Python3 AskOpenFileName错误

  14. 14

    Python3 AskOpenFileName错误

  15. 15

    TypeScript stepUp 方法在输入类型编号上引发错误

  16. 16

    python3上的UnicodeDecodeError

  17. 17

    Cygwin上的Python3

  18. 18

    为什么Gradle在缺少的项目属性上引发错误

  19. 19

    Python3类型系统:在参数中调用特定属性?

  20. 20

    试图通过pyglet_ffmpeg在Debian 10错误上使用Python3上的街机库

  21. 21

    Ubuntu上的Python3在help()命令上给出错误

  22. 22

    在Python3中设置函数错误:列表是不可散列的类型

  23. 23

    错误:TypeError:ColumnClause类型的对象不是JSON可序列化的Python3

  24. 24

    Python3 Sha256:类型错误:对象支持所需的缓冲区 API

  25. 25

    类型错误:需要一个类似字节的对象,而不是“int”python3

  26. 26

    python3:类型错误:需要类似字节的对象,而不是“str”

  27. 27

    不会引发Python3抽象类TypeError

  28. 28

    我从地带收到此错误消息:[.gnu.build.attributes]:损坏的GNU构建属性注释:错误的注释类型:错误的值

  29. 29

    如何修复错误“ AttributeError:'模块'对象在python3中没有属性'客户端'?

热门标签

归档