title: Why does python point two variables to a same memory address?
body: <p>I declared two variables in Python 3 and tried printing their memory addresses as:</p>
  
  <pre><code>num1 = 1
  num2 = 1
  print(hex(id(num1)))
  print(hex(id(num2)))
  </code></pre>
  
  <p>turns out that both the <strong>addresses are the same</strong>.
  Why is it so unlike C and C++ where every variable has a unique memory address.</p>