title: Are types in Python's typing library global variables?
body: <p>I am integrating type hinting into a large Python project, and decided it would be a good idea to put all of my types into a single module that other modules could simply <code>import *</code> from.</p>
  
  <p>Here's a (greatly) simplified version of <code>types.py</code>:</p>
  
  <pre class="lang-py prettyprint-override"><code>from typing import Union
  Value = Union[float, int]
  num = 3
  </code></pre>
  
  <p>However, when I try to import <code>Value</code> from <code>types.py</code>, I get <code>ImportError: cannot import name 'Value' from 'ntupledicts.types'</code>. If I import <code>num</code> from <code>types.py</code>, things go just fine. <strong>Are types not global variables?</strong> If they aren't, is the best solution really to copy-paste the type aliases at the top of every file that uses them? Any input would be appreciated.</p>