使用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
关键字。我不知道这样的事情,对不起。