Python mutually dependent classes (circular depend

2020-01-29 14:18发布

问题:

I've searched a lot, but what I find is mainly examples of recursive programming in python. So here goes the question:

How can I achieve this?

class A:
    b = B()

class B:
    a = A()

回答1:

Everything is dynamic in Python - even the class declarations. There's nothing to stop you modifying the contents of a class after the initial declaration:

class A:
    pass

class B:
    a = A()

A.b = B()

NB: If you're not that familiar with Python, the pass keyword simply allows you to say 'nothing here' - it's not important unless class A is as empty as it is in this example!