title: The reason cause different location of python packages
body: <p>I am new to Linux system and don't have background about operating system.</p>
  <p>I have some issues about importing numpy, but I worked it out.</p>
  <p>But still have some questions in my mind.</p>
  <p>I know that I can use following code to know where Python finds packages</p>
  <pre><code>import sys
  sys.path()
  </code></pre>
  <p>which in my case gives several options:</p>
  <pre><code>/home/twotwo/.local/lib/python3.6/site-packages
  /usr/local/lib/python3.6/dist-packages
  /usr/lib/python3/dist-packages
  </code></pre>
  <p>And I would like to know the difference between them.</p>
  <p>I guess that the difference between first and second is caused by the way I download it as cited below, if not please do correct me.</p>
  <blockquote>
  <p>We recommend using an user install, using the --user flag to pip (note: do not use sudo pip, which can cause problems). This installs packages for your local user, and does not write to the system directories.</p>
  </blockquote>
  <p>And the second and third one both have<code>/usr</code> in the beginning.</p>
  <p>But there's still a difference between, one has <code>local</code> and the other one doesn't.</p>
  <p>To summarize my questions:</p>
  <p>(1) The difference between:</p>
  <pre><code>/home/twotwo/.local/lib/python3.6/site-packages 
  
  /usr/local/lib/python3.6/dist-packages
  </code></pre>
  <p>(2) The difference between:</p>
  <pre><code>/usr/local/lib/python3.6/dist-packages
  
  /usr/lib/python3/dist-packages
  </code></pre>
  <p>(3) Actually, two of these paths have numpy but how does python choose which one to be imported?</p>
  <p>Many Thanks to you all, and have a nice day!</p>