title: Adding value to a list in a tuple
body: <p>Here's 2 pieces of Python code:</p>
  
  <pre><code>t = (1, [2])
  t[1] += [3]
  </code></pre>
  
  <p>and</p>
  
  <pre><code>t = (1, [2])
  t[1].append(3)
  </code></pre>
  
  <p>The first piece firstly modifies the inner list <code>t[1]</code>, and than throws an exception while trying to reassign value in the tuple. Though value of <code>t</code> has actually changed, this behaviour is more or less understandable. But the second piece of code changes the tuple without any error/exception/whatever (as I understand, because it changes list <code>t[1]</code> without reassignment).
  The question is, doesn't this stuff contradict the immutability of tuples?</p>