title: Adding elements to a tuple when I know I shouldn't be able to
body: <p><a href="http://www.diveintopython.net/native_data_types/tuples.html" rel="nofollow" title="Dive Into Python">Dive Into Python</a> is one of many sources that says:</p>
  
  <blockquote>
    <p>You can't add elements to a tuple.</p>
  </blockquote>
  
  <p>But it looks as if I was allowed to do just that. My code:</p>
  
  <pre><code>from string import find
  
  def subStringMatchExact(target, key):
      t = (99,)
      location = find(target, key)
      while location != -1
          t += (location,)    # Why is this allowed?
          location = find(target, key, location + 1)
      return t
  
  print subStringMatchExact("atgacatgcacaagtatgcat", "tg")
  </code></pre>
  
  <p>Output:</p>
  
  <pre><code>(99, 1, 6, 16)
  </code></pre>
  
  <p>This leads me to believe that I am not actually creating a tuple when I initialize <code>t</code>. Can someone help me understand?</p>