title: Case insensitive dictionary
body: <p>I'd like my dictionary to be case insensitive.</p>
  
  <p>I have this example code:</p>
  
  <pre><code>text = "practice changing the color"
  
  words = {'color': 'colour',
          'practice': 'practise'}
  
  def replace(words,text):
  
      keys = words.keys()
  
      for i in keys:
          text= text.replace(i ,words[i])
      return  text
  
  text = replace(words,text)
  
  print text
  </code></pre>
  
  <p>Output = practise changing the colour</p>
  
  <p>I'd like another string, <code>"practice changing the Color"</code>, (where <code>Color</code> starts with a capital) to also give the same output.</p>
  
  <p>I believe there is a general way to convert to lowercase using
  <code>mydictionary[key.lower()]</code> but I'm not sure how to best integrate this into my existing code. (If this would be a reasonable, simple approach anyway).</p>