Where does pip install its packages?

后端 未结 7 1680
野的像风
野的像风 2020-12-02 03:52

I activated a virtualenv which has pip installed. I did

pip3 install Django==1.8

and Django successf

相关标签:
7条回答
  • 2020-12-02 03:59

    pip when used with virtualenv will generally install packages in the path <virtualenv_name>/lib/<python_ver>/site-packages.

    For example, I created a test virtualenv named venv_test with Python 2.7, and the django folder is in venv_test/lib/python2.7/site-packages/django.

    0 讨论(0)
  • 2020-12-02 03:59

    One can import the package then consult its help

    import statsmodels
    help(sm)
    

    At the very bottom of the help there is a section FILE that indicates where this package was installed.

    This solution was tested with at least matplotlib (3.1.2) and statsmodels (0.11.1) (python 3.8.2).

    0 讨论(0)
  • 2020-12-02 04:06

    Easiest way is probably

    pip3 -V
    

    This will show you where your pip is installed and therefore where your packages are located.

    0 讨论(0)
  • 2020-12-02 04:20

    pip show <package name> will provide the location for Windows and macOS, and I'm guessing any system. :)

    For example:

    > pip show cvxopt
    Name: cvxopt
    Version: 1.2.0
    ...
    Location: /usr/local/lib/python2.7/site-packages
    
    0 讨论(0)
  • 2020-12-02 04:20

    In a Python interpreter or script, you can do

    import site
    site.getsitepackages() # List of global package locations
    

    and

    site.getusersitepackages() # String for user-specific package location
    

    For locations third-party packages (those not in the core Python distribution) are installed to.

    On my Homebrew-installed Python on macOS, the former outputs

    ['/usr/local/Cellar/python/3.7.4/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages'],

    which canonicalizes to the same path output by pip show, as mentioned in a previous answer:

    $ readlink -f /usr/local/Cellar/python/3.7.4/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages
    /usr/local/lib/python3.7/site-packages
    

    Reference: https://docs.python.org/3/library/site.html#site.getsitepackages

    0 讨论(0)
  • 2020-12-02 04:22

    By default, on Linux, Pip installs packages to /usr/local/lib/python2.7/dist-packages.

    Using virtualenv or --user during install will change this default location. If you use pip show make sure you are using the right user or else pip may not see the packages you are referencing.

    0 讨论(0)
提交回复
热议问题