使用setattr设置的属性在PyCharm中显示为未解析的引用

使用setattr设置的属性在PyCharm中显示为未解析的引用,pycharm,Pycharm,我有一个类,它使用setattrbuiltin动态定义了几个属性。但是,PyCharm将这些属性的所有使用显示为未解析的引用。有没有办法(通过代码或PyCharm设置)帮助PyCharm解析这些属性?尝试文件-->使缓存无效/重新启动-->使缓存无效并重新启动很遗憾,您不能 在我看来,您可以在动态属性上执行Alt+Enter,然后选择“忽略未解析引用”来忽略警告 或者,如果不想对所有类属性都这样做,可以在类docstring中添加@DynamicAttrs 这里有一个例子: class Your

我有一个类,它使用
setattr
builtin动态定义了几个属性。但是,PyCharm将这些属性的所有使用显示为未解析的引用。有没有办法(通过代码或PyCharm设置)帮助PyCharm解析这些属性?

尝试
文件
-->
使缓存无效/重新启动
-->
使缓存无效并重新启动

很遗憾,您不能

在我看来,您可以在动态属性上执行Alt+Enter,然后选择“忽略未解析引用”来忽略警告

或者,如果不想对所有类属性都这样做,可以在类docstring中添加@DynamicAttrs

这里有一个例子:

class YourClassWithSeveralAttributes(object):
    """@DynamicAttrs""" # <-- here

    def __init__(self):
        setattr(self, 'foo', 1)
        setattr(self, 'bar', 2)
        setattr(self, 'foo1', 11)
        setattr(self, 'bar2', 22)
使用几个属性(对象)对YourClasses进行分类:

“@DynamicAttrs”#
@DynamicAttrs
太棒了!如果我将它添加到调用
setattr
的父类中的doc字符串中,它也会起作用。我可以接受这样一个缺点,即在这个类和派生类中,“未解析引用”警告不处于活动状态。是否还有一种方法可以通过docstring提示属性,以便它们可以自动完成并避免警告?类似于
@DynamicAttrs
关键字。我不知道这样的事情,对不起。