class_docstr: A trie (prefix tree) where the keys are sequences of hashable objects.
  
  It behaves similarly to a dictionary, except that the keys can be lists or
  other sequences.
  
  Examples:
      >>> from featuretools.utils import Trie
      >>> trie = Trie(default=str)
      >>> # Set a value
      >>> trie.get_node([1, 2, 3]).value = '123'
      >>> # Get a value
      >>> trie.get_node([1, 2, 3]).value
      '123'
      >>> # Overwrite a value
      >>> trie.get_node([1, 2, 3]).value = 'updated'
      >>> trie.get_node([1, 2, 3]).value
      'updated'
      >>> # Getting a key that has not been set returns the default value.
      >>> trie.get_node([1, 2]).value
      ''
class_docstr_tok: ["A","trie","(","prefix","tree",")","where","the","keys","are","sequences","of","hashable","objects",".","It","behaves","similarly","to","a","dictionary",",","except","that","the","keys","can","be","lists","or","other","sequences",".","Examples",":",">",">",">","from","featuretools.utils","import","Trie",">",">",">","trie","=","Trie","(","default=str",")",">",">",">","#","Set","a","value",">",">",">","trie.get_node","(","[","1",",","2",",","3","]",")",".value","=","'123'",">",">",">","#","Get","a","value",">",">",">","trie.get_node","(","[","1",",","2",",","3","]",")",".value","'123'",">",">",">","#","Overwrite","a","value",">",">",">","trie.get_node","(","[","1",",","2",",","3","]",")",".value","=","'updated'",">",">",">","trie.get_node","(","[","1",",","2",",","3","]",")",".value","'updated'",">",">",">","#","Getting","a","key","that","has","not","been","set","returns","the","default","value",".",">",">",">","trie.get_node","(","[","1",",","2","]",")",".value","``"]
docstr: default: A function returning the value to use for new nodes.
  path_constructor: A function which constructs a path from a list. The
      path type must support addition (concatenation).
docstr_tok: ["default",":","A","function","returning","the","value","to","use","for","new","nodes",".","path_constructor",":","A","function","which","constructs","a","path","from","a","list",".","The","path","type","must","support","addition","(","concatenation",")","."]
code: def __init__(self, default=lambda: None, path_constructor=list):
      """
      default: A function returning the value to use for new nodes.
      path_constructor: A function which constructs a path from a list. The
          path type must support addition (concatenation).
      """
      self.value = default()
      self._children = {}
      self._default = default
      self._path_constructor = path_constructor
  
label_desc: Use image node_id 1 to create a new Trie object from inherited base classes: object with example: obj = Trie(default, path_constructor)