title: Is there a data structure that can get value by key and get key by value both in Python?
body: <p>Title might be a bit confusing, so here's an example, assume you have a really big <code>dict</code> like this:</p>
  
  <pre><code>{"James": “20492”， “Mike": "292", "Tony": "11134", "Timmy": "3984", ... }
  </code></pre>
  
  <p>Let's say all keys and values are unique, there're <strong>no duplicates</strong>. And I want to get <code>James</code> by providing id <code>20492</code>, or get <code>292</code> by providing <code>Mike</code>. </p>
  
  <p>Well, besides for creating another "reverse" <code>dict</code> like this: <code>{"20492": "James", ... }</code>, what other choices(better be elegant) do I have?</p>