Python PyCharm中的类型检查类静态变量

Python PyCharm中的类型检查类静态变量,python,pycharm,static-variables,typechecking,python-typing,Python,Pycharm,Static Variables,Typechecking,Python Typing,我在PyCharm项目中有以下Python代码: 类别: 文本:str a=类别() a、 text=1.54654#警告在哪里? 当我试图用错误的类型设置属性时,编辑器应该显示一个警告。查看以下设置: 这是一个bug,如果尝试,静态类型检查器将发出警告。更改IDE配置不会改变这一点,唯一的方法是使用不同的Linter 我稍微修改了代码,以确保docstring不会产生任何影响 类别: “”“您的文档字符串。 属性: 文本(str):描述。 """ 文本:str a=类别() Category

我在PyCharm项目中有以下Python代码:

类别:
文本:str
a=类别()
a、 text=1.54654#警告在哪里?
当我试图用错误的类型设置属性时,编辑器应该显示一个警告。查看以下设置:

这是一个bug,如果尝试,静态类型检查器将发出警告。更改IDE配置不会改变这一点,唯一的方法是使用不同的Linter

我稍微修改了代码,以确保docstring不会产生任何影响

类别:
“”“您的文档字符串。
属性:
文本(str):描述。
"""
文本:str
a=类别()
Category.text=11#警告在哪里?
a、 text=1.54654#警告在哪里?
MyPy确实给出了以下警告:

编辑:在评论中指出有一个bug报告

顺便提一下,还值得一提的是,问题中的示例设置了一个静态类变量,但也通过在实例上设置值来重新绑定它。给出了一个冗长的解释

>>Category.text=11
>>>a.text=1.54654
>>>a.文本
1.5454654
>>>类别.文本
11

您使用的python版本是什么?你的魅力是如何与之相关的?启用
TypeChecker
仅当使用的
TypeChecker
可以检测到类型错误/警告,并且您的问题中不清楚什么实际用于检查类型…@Jean BenoitHarvey-版本是2020.3,问题是如果文本属性是
str
,我为什么在设置text=number时看不到警告?感谢事实上,这是一个bug文件:。但一年后还没修好。
main.py:13: error: Incompatible types in assignment (expression has type "int", variable has type "str")
main.py:14: error: Incompatible types in assignment (expression has type "float", variable has type "str")
Found 2 errors in 1 file (checked 1 source file)