我正在使用一个现有的大型Python代码库,并希望开始添加类型注释,这样我就可以获得某种级别的静态检查。我在想象像,,或者之类的东西。我见过快速和脏的装饰器,它们根据函数参数和返回类型注释插入动态检查,但我正在寻找更健壮的东西,并在编译时执行检查。(注意:我不想讨论静态输入的利弊。)编辑:一个示例:
def put(d, k
如何以类似于isinstance的方式创建缩小变量类型(用于静态类型检查器)的函数 例如,ComplexTypeAssertion只在运行时缩小类型范围,而不是静态检查: def MyFunctionisinstance(data, list) and all(isinstance(value, str) for value in data) 我如何定义ComplexTypeAssertion,以便静态分析工具能够理解该类型在我想断言