title: How to sort OrderedDict using a sorted list of keys?
body: <p>Suppose I have a <code>collections.OrderedDict</code> object and a re-arranged list of its keys:</p>
  
  <pre><code>ordereddict = collections.OrderedDict((
      ('key_78', 'value'),
      ('key_40', 'value'),
      ('key_96', 'value'),
      ('key_53', 'value'),
      ('key_04', 'value'),
      ('key_89', 'value'),
      ('key_52', 'value'),
      ('key_86', 'value'),
      ('key_16', 'value'),
      ('key_63', 'value'),
  ))
  
  # Example only; actual list will **not** == sorted(ordereddict)
  key_list = ['key_04', 'key_16', 'key_40', 'key_52', 'key_53', 'key_63', 'key_78', 'key_86', 'key_89', 'key_96']
  </code></pre>
  
  <p>How can I sort the <code>OrderedDict</code> so that it is ordered in the same way as the <code>key_list</code>?</p>