def node(tree, List = [], max_depth = 5, counter = 0):
    calls = getattr(node, "calls", 0)  
    print('Calls:', calls)
    question = list(tree.keys())[0]
    yes_answer = tree[question][0]
    no_answer =  tree[question][1]
    if isinstance(yes_answer, dict) and isinstance(no_answer, dict):
        node(yes_answer)
        node(no_answer)
        setattr(node, "calls", calls + 1)
    else:
        setattr(node, "calls", calls + 1)
        if (isinstance(yes_answer, dict) and not isinstance(no_answer, dict)) | (not isinstance(yes_answer, dict) and isinstance(no_answer, dict)):
            counter += 1
            List.append(counter)
            if isinstance(yes_answer, dict) and not isinstance(no_answer, dict):
                node(yes_answer)
            if not isinstance(yes_answer, dict) and isinstance(no_answer, dict):
                node(no_answer)
        else:
            counter +=2
            List.append(counter)
            if calls == max_depth:
                  Summe_Knoten = sum(List)
                  print("Summe Knoten: ", Summe_Knoten)
                  return Summe_Knoten
            
 
Hello, could someone tell me why the Python function always outputs a NonType object? I iterate over a dict and would like the sum of the list at the end. Unfortunately, the function always resets the counter to 0, so I have inserted the list.
