title: Assign a object to the pointer the node is referring
body: <pre class="lang-py prettyprint-override"><code>class BinarySearchTree:
  
      def __init__(self, value=None, left=None, right=None):
          self.value = value
          self.left = left
          self.right = right
  
      def insert(self, value) -&gt; bool:
          current_node = self
  
          while current_node is not None:
              if current_node.value &lt; value:
                  current_node = current_node.left
              elif current_node.value == value:
                  return False
              elif current_node.value &gt; value:
                  current_node = current_node.right
  
          # id(current_node) &lt;-- I need to create a object on this
          current_node = BinarySearchTree(value)  # &lt;--
          # id(current_node) &lt;-- This is a new assigned id, but I need the same as the previous id
  
          return True
  
  binary_search_tree = BinarySearchTree(2)
  binary_search_tree.insert(5)
  
  print(binary_search_tree.__dict__)
  </code></pre>
  <p><code>current_node</code> refers to <code>current_node.left</code> or <code>current_node.right</code>.</p>
  <p>I need to create a new object and assign it to the pointer the <code>current_node</code> is referring,</p>
  <p>but I only create a new object and assign it to a new pointer.</p>