PyCharm在一个类或函数之外没有给出“预期类型”的警告的原因是因为PyCharm默认只对函数和方法体进行类型检查,而不会对类定义或者类之外的代码进行类型检查。
在静态类型检查中,PyCharm使用了类型提示和类型注解来推断和检查变量和函数的类型。当在函数或方法体内部使用类型注解时,PyCharm可以根据注解提供类型警告和错误检查。
然而,对于类定义或类之外的代码,PyCharm并不会进行类型检查。这是因为在类定义或类之外的代码中,变量的类型通常是动态确定的,并且可能会受到各种因素的影响。因此,PyCharm无法准确地确定变量的预期类型,并给出警告。
如果你希望对类定义或类之外的代码进行类型检查,可以使用其他工具,如mypy,来进行静态类型检查。mypy是一个独立的静态类型检查器,可以在Python代码中执行类型检查,包括类定义和其他代码部分。
总结起来,PyCharm在一个类或函数之外没有给出“预期类型”的警告是因为它默认只对函数和方法体进行类型检查,对于类定义或类之外的代码,PyCharm不会进行类型检查。如果需要对类定义或类之外的代码进行类型检查,可以使用其他工具如mypy来进行静态类型检查。
领取专属 10元无门槛券
手把手带您无忧上云