首页 > 解决方案 > python3x中两个子类之间的跨类引用

问题描述

任何人都可以帮助理解如何从python3中的另一个子类制作子类构造函数???可能我需要进行一些类预初始化导入吗?所有类都在一个文件中,所以我无法导入它

class Parent():
    def __init__(self):
        print "Parent"

class ChildOne(Parent):
    two = ChildTwo() # Not works!!! How to make it works???

    def __init__(self):
        Parent.__init__(self)
        two.print_two()

    def print_one(self):
        print "One"

class ChildTwo(Parent):
    one = ChildOne() # This works!!!

    def __init__(self):
        Parent.__init__(self)
        one.print_one()

    def print_two(self):
        print "Two"

标签: python-3.x

解决方案


没有办法做到这一点,因为您在子类之间进行了递归。只有一种方法是将此 print_one 和 print_two 移动到父类并从父类中使用它。


推荐阅读