我有一个使用setattr内置动态定义几个属性的类。但是,PyCharm将这些属性的所有使用显示为未解析的引用。有没有办法(通过代码或PyCharm设置)来帮助PyCharm解决这些属性?
不幸的是你不能。
从我的角度来看,您可以忽略对动态属性执行 Alt + Enter 的警告,然后选择“忽略未解析的引用”。
或者,如果您不想为所有类属性执行此操作,则可以在类文档字符串中添加 @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)
Run Code Online (Sandbox Code Playgroud)
请记住,以前的任何解决方案都不会使 PyCharm 能够识别您的动态属性,并且这些属性将无法使用自动完成功能。它们只是忽略警告的方法。
| 归档时间: |
|
| 查看次数: |
320 次 |
| 最近记录: |