如何在Python中的类成员变量(未知语法)中自引用类



几年前我学过Python,但我不知道如何将类引用为自我。

查看我的问题:

class SomeClassReference(object):
  def __init__(self, reference):
    self.reference = reference
class MyClass(object):
  # MyClass is not defined - how to solve it?
  a = SomeClassReference(reference = MyClass)

是否可以在 Python 中进行这样的自我引用,我需要使用什么语法来初始化类的类成员我经常使用Python,但不知道如何做?

class Point(object):
  ZERO = None
  def __init__(self, x, y):
    self.x = x
    self.y = y
Point.ZERO = Point(0,0)

类定义中不需要 ZERO,但我正在使用它,因为我的 IDE 无法找到用于代码完成的类变量。

您可以尝试使用二传手方法setReference ):

class SomeClassReference(object):
    def __init__(self):
        self.reference = None
class MyClass(object):
    def __init__(self):
        self.a = SomeClassReference()
    def setReference(self):
        self.a.reference = MyClass

最新更新