epydoc和Sphinx文档生成器都允许编码器注释任何/所有函数参数的类型。
我的问题是:当在docstring中记录时,是否有一种方式(或模块)强制执行这些类型(在运行时)。这将不是强类型(编译时检查),但是(更有可能)可能被称为稳固类型(运行时检查)。也许可以提出一个"ValueError",或者更好的.提出"SemanticError“
理想情况下,已经有类似于"import antigravity“模块的东西(如模块),并且这个"firm_type_check”模块已经存在于方便下载的地方。
FYI: epydoc和sphinz的docstring如下:
epydoc:函数和方法参数:
在指令中的斯芬克斯:,这些字段的reST字段列表被很好地识别和格式化:
我能找到的最接近的是mail.python.org中的Guido和典型例子的Jukka创作的。CMIIW:mypy不能作为py3模块导入。
类似的堆栈溢出问题,不使用本身使用docstring:
发布于 2014-12-10 13:23:36
据我所知,由于几个重要的原因,这种情况根本不存在:
python运行-OO,那么所有的文档字符串都会被删除。然后呢?我诚实的观点是:如果您要经历(相当大的)麻烦,为Python编写一个(必须是半生不熟的)静态类型系统,那么通过学习另一种支持静态类型的编程语言,可以更好地利用它:
core.typed (https://github.com/clojure/core.typed)进行可选的静态类型。它面向并发和联网(它有STM和持久数据结构<3 ),有一个很棒的社区,是我见过的设计最优雅的语言之一。也就是说,它运行在JVM上,这既是好事,也是坏事。https://stackoverflow.com/questions/27401274
复制相似问题