title: Is it reasonable to use None as a dictionary key in Python?
body: <p>None seems to work as a dictionary key, but I am wondering if that will just lead to trouble later.  For example, this works:</p>
  
  <pre><code>&gt;&gt;&gt; x={'a':1, 'b':2, None:3}
  &gt;&gt;&gt; x
  {'a': 1, None: 3, 'b': 2}
  &gt;&gt;&gt; x[None]
  3
  </code></pre>
  
  <p>The actual data I am working with is educational standards.  Every standard is associated with a content area.  Some standards are also associated with content subareas.  I would like to make a nested dictionary of the form <code>{contentArea:{contentSubArea:[standards]}}</code>.  Some of those contentSubArea keys would be None.</p>
  
  <p>In particular, I am wondering if this will lead to confusion if I look for a key that does not exist at some point, or something unanticipated like that.</p>