似乎是一个显而易见的问题,但我无法找到答案。
在Python中,如何初始化类数据(不是实例属性)。
class MyClass:
DATA = MyClass()
不起作用,因为MyClass()
尚未定义。
class MyClass:
pass
MyClass.DATA = MyClass()
让人类的读者,linter,IDE和自动完成感到困惑。
有更标准的方法吗?
答案 0 :(得分:1)
你不能。您应该键入它并在之后定义它:
class MyClass:
DATA: ClassVar['MyClass'] # Will get set afterwards
MyClass.DATA = MyClass()
这应解决自动完成(IDE)和人类阅读器的问题。大多数短绒也应该没问题。