title: How do I set Python's USER_SITE; do I need to?
body: <p>I have a Python installation on OS X (10.10; maintained simply with pip) with my site packages in</p>
  
  <pre><code>/Library/Python/2.7/site-packages
  </code></pre>
  
  <p>Apple's packages in</p>
  
  <pre><code>/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python
  </code></pre>
  
  <p>and the standard Apple Python installation in</p>
  
  <pre><code>/System/Library/Frameworks/Python.framework/Versions/2.7
  </code></pre>
  
  <p>I did nothing special to set this up, so I assume it is pretty standard. I install my packages in the site packages directory, and the only thing I have done to "customize" is to prune the Apple packages I don't need or that duplicate ones I maintain in my site packages directory.</p>
  
  <p>Everything works fine, and <a href="https://stackoverflow.com/q/21236384/656912">all my paths</a> seem to be just what I'd expect; however I get a confusing result when I </p>
  
  <pre><code>python -m site
  </code></pre>
  
  <p>While this shows a <code>sys.path</code> that makes sense to me</p>
  
  <pre><code>sys.path = [
      '/Users/Rax',
      '/Users/Rax/Documents/Projects/Coding/Python', # From PYTHONPATH
      '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python27.zip',
      '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7',
      '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin',
      '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac',
      '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages',
      '/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python',
      '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk',
      '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-old',
      '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload',
      '/Library/Python/2.7/site-packages',
  ]
  </code></pre>
  
  <p>I also get</p>
  
  <pre><code>USER_BASE: '/Users/Rax/Library/Python/2.7' (doesn't exist)
  USER_SITE: '/Users/Rax/Library/Python/2.7/lib/python/site-packages' (doesn't exist)
  ENABLE_USER_SITE: True
  </code></pre>
  
  <p>which doesn't make sense to me. </p>
  
  <p>Shouldn't <a href="https://docs.python.org/2/library/site.html#site.USER_SITE" rel="nofollow noreferrer"><code>USER_SITE</code></a> be <code>/Library/Python/2.7/site-packages</code>? If so, how do I set it (I can't by setting <code>USER_SITE</code> to  <code>/Library/Python/2.7/</code> because <code>lib/python/</code> is added to the path)?</p>
  
  <hr>
  
  <p>This is doubly confusing to me because <code>/Library/Python/2.7/site-packages</code> is correctly added to my <code>sys.path</code> (from where I don't know) and because </p>
  
  <pre><code>import pkg_resources
  pkg_resources.__file__
  </code></pre>
  
  <p>yields <code>/Library/Python/2.7/site-packages/pkg_resources.pyc</code>.</p>