python3x中两个子类之间的交叉类引用

问题描述 投票:-1回答:1

[任何人都可以帮助您了解如何从python3中的另一个子类制作子类构造函数吗???可能需要进行一些类的preinit导入吗?所有类都在一个文件中,所以我不能导入它

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
1个回答
0
投票

无法执行此操作,因为您在子类之间进行了递归。只有一种方法是将这个print_one和print_two移到父类并从父类使用它。

© www.soinside.com 2019 - 2024. All rights reserved.