title: why does variable assignment not work on lists sometimes
body: <p>Python beginner here. Confused about the nature of list assignment.</p>
  <pre><code>a = [1, 2, 3]
  b = a.reverse()
  </code></pre>
  <pre><code>&gt;&gt;&gt;a 
  &gt;&gt;&gt;[3,2,1]
  &gt;&gt;&gt;b
  &gt;&gt;&gt; # nothing shows up
  </code></pre>
  <p>or</p>
  <pre><code>e = [1,2,3]
  f = e.append(4)
  </code></pre>
  <pre><code>&gt;&gt;&gt;e 
  &gt;&gt;&gt;[1,2,3,4]
  &gt;&gt;&gt;f
  &gt;&gt;&gt; # nothing shows up
  </code></pre>
  <p>Why does assigning to b or f not work here.
  I believe it has to do with the mutability of lists? Am i completely wrong? Thanks</p>