class Node: def __init__(self, name, parent=None): self.name = name self.parent = parent self.children = [] if parent: self.parent.children.append(self) def __repr__(self): if self.children == []: return self.name return '('+self.name + ' ' + ' '.join(repr(c) for c in self.children)+')' Write a complete python file that will print the tree (1 (2 3) 4) Call the root of the tree 'root'. Then print out str(root). DO NOT MODIFY THE Node CLASS.
class Node: def __init__(self, name, parent=None): self.name = name self.parent = parent self.children = [] if parent: self.parent.children.append(self) def __repr__(self): if self.children == []: return self.name return '('+self.name + ' ' + ' '.join(repr(c) for c in self.children)+')' Write a complete python file that will print the tree (1 (2 3) 4) Call the root of the tree 'root'. Then print out str(root). DO NOT MODIFY THE Node CLASS.
#!/usr/bin/env python3 # Do not modify the Node class class Node: def __init__(self, name, parent=None): self.name = name self.parent = parent self.children = [] if parent: self.parent.children.append(self) def __repr__(self): if self.children == []: return self.name return '('+self.name + ' ' + ' '.join(repr(c) for c in self.children)+')' # Build the tree and print it if __name__ == "__main__": root = Node("1") node2 = Node("2", root) Node("3", node2) Node("4", root) print(str(root))
I extracted the following code from that output:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | #!/usr/bin/env python3 # Do not modify the Node class class Node: def __init__(self, name, parent=None): self.name = name self.parent = parent self.children = [] if parent: self.parent.children.append(self) def __repr__(self): if self.children == []: return self.name return '('+self.name + ' ' + ' '.join(repr(c) for c in self.children)+')' # Build the tree and print it if __name__ == "__main__": root = Node("1") node2 = Node("2", root) Node("3", node2) Node("4", root) print(str(root)) |
Running the following program:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | #!/usr/bin/env python3 # Do not modify the Node class class Node: def __init__(self, name, parent=None): self.name = name self.parent = parent self.children = [] if parent: self.parent.children.append(self) def __repr__(self): if self.children == []: return self.name return '('+self.name + ' ' + ' '.join(repr(c) for c in self.children)+')' # Build the tree and print it if __name__ == "__main__": root = Node("1") node2 = Node("2", root) Node("3", node2) Node("4", root) print(str(root)) |
(1 (2 3) 4)
Testing if the previous output contains the string (1 (2 3) 4)
: True
class Node: def __init__(self, name, parent=None): self.name = name self.parent = parent self.children = [] if parent: self.parent.children.append(self) def __repr__(self): if self.children == []: return self.name return '('+self.name + ' ' + ' '.join(repr(c) for c in self.children)+')' Write a complete python file that will print the tree (1 (2 3) 4) Call the root of the tree 'root'. Then print out str(root). DO NOT MODIFY THE Node CLASS.
class Node: def __init__(self, name, parent=None): self.name = name self.parent = parent self.children = [] if parent: self.parent.children.append(self) def __repr__(self): if self.children == []: return self.name return '('+self.name + ' ' + ' '.join(repr(c) for c in self.children)+')' Write a complete python file that will print the tree (1 (2 3) 4) Call the root of the tree 'root'. Then print out str(root). DO NOT MODIFY THE Node CLASS.
#!/usr/bin/env python3 class Node: def __init__(self, name, parent=None): self.name = name self.parent = parent self.children = [] if parent: self.parent.children.append(self) def __repr__(self): if self.children == []: return self.name return '(' + self.name + ' ' + ' '.join(repr(c) for c in self.children) + ')' # Build the tree: # Create the root node with name '1' and refer to it as "root" root = Node('1') # Create node '2' as child of root node2 = Node('2', parent=root) # Create node '3' as child of node2 node3 = Node('3', parent=node2) # Create node '4' as child of root node4 = Node('4', parent=root) # Print the tree print(str(root))
I extracted the following code from that output:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | #!/usr/bin/env python3 class Node: def __init__(self, name, parent=None): self.name = name self.parent = parent self.children = [] if parent: self.parent.children.append(self) def __repr__(self): if self.children == []: return self.name return '(' + self.name + ' ' + ' '.join(repr(c) for c in self.children) + ')' # Build the tree: # Create the root node with name '1' and refer to it as "root" root = Node('1') # Create node '2' as child of root node2 = Node('2', parent=root) # Create node '3' as child of node2 node3 = Node('3', parent=node2) # Create node '4' as child of root node4 = Node('4', parent=root) # Print the tree print(str(root)) |
Running the following program:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | #!/usr/bin/env python3 class Node: def __init__(self, name, parent=None): self.name = name self.parent = parent self.children = [] if parent: self.parent.children.append(self) def __repr__(self): if self.children == []: return self.name return '(' + self.name + ' ' + ' '.join(repr(c) for c in self.children) + ')' # Build the tree: # Create the root node with name '1' and refer to it as "root" root = Node('1') # Create node '2' as child of root node2 = Node('2', parent=root) # Create node '3' as child of node2 node3 = Node('3', parent=node2) # Create node '4' as child of root node4 = Node('4', parent=root) # Print the tree print(str(root)) |
(1 (2 3) 4)
Testing if the previous output contains the string (1 (2 3) 4)
: True