0
class Data:
    def __del__(self):
        print('Data.__del__')

class Node:
    def __init__(self):
        self.data = Data()
        self.parent = None
        self.children = []

    def add_child(self, child):
        self.children.append(child)
        child.parent = self

a = Node()
del a

As a result, Data.__del__ is printed, why __del__() funtion in class Data is called?

bereal
  • 32,519
  • 6
  • 58
  • 104
peal888
  • 21
  • 3

0 Answers0