Loading

Paste #peztllomx

  1. class Namespace:
  2.     def __init__(self, name, parent):
  3.         self.name = name
  4.         self.parent = parent
  5.         self.vars = set()
  6.  
  7. namespaces = {
  8.     'global': Namespace(name='global', parent=None)
  9. }
  10.  
  11. n = int(input())
  12. for i in range(n):
  13.     command, *args = input().split()
  14.     if command == "create":
  15.         name, parent_name = args
  16.         parent = namespaces[parent_name]
  17.         namespaces[name] = Namespace(name, parent)
  18.     if command == 'add':
  19.         name, var = args
  20.         namespaces[name].vars.add(var)
  21.     if command == 'get':
  22.         name, var = command
  23.         namespace = namespaces[name]
  24.         while namespace is not None and var not in namespace.vars:
  25.             namespace = namespace.parent
  26.         if namespace is not None:
  27.             print(namespace.name)
  28.         else:
  29.             print(None)