Waar installeert pip zijn pakketten?

Ik heb een virtualenvgeactiveerd waarop pip is geïnstalleerd. Ik heb het gedaan

pip3 install Django==1.8

en Django succesvol gedownload. Nu wil ik de Django-map openen. Waar bevindt de map zich?

Normaal gesproken zou het in “downloads” staan, maar ik weet niet zeker waar het zou zijn als ik het zou installeren met pip in een virtualenv.


Antwoord 1, autoriteit 100%

pipbij gebruik met virtualenvzal over het algemeen pakketten installeren in het pad <virtualenv_name>/lib/<python_ver>/site-packages.

Ik heb bijvoorbeeld een test virtualenv gemaakt met de naam venv_testmet Python2.7, en de map djangobevindt zich in venv_test/lib/python2.7/site-packages/django.


Antwoord 2, autoriteit 96%

pip show <package name>geeft de locatie voor Windows en macOS, en ik vermoed elk systeem. 🙂

Bijvoorbeeld:

> pip show cvxopt
Name: cvxopt
Version: 1.2.0
...
Location: /usr/local/lib/python2.7/site-packages

Antwoord 3, autoriteit 77%

pip list -vkan worden gebruikt om de installatielocaties van pakketten weer te geven, geïntroduceerd in https://pip.pypa.io/en/stable/news/#b1-2018-03-31

Toon installatielocaties wanneer de lijstopdracht werd uitgevoerd met de optie -v . (#979)

>pip list -v
Package                  Version   Location                                                             Installer
------------------------ --------- -------------------------------------------------------------------- ---------
alabaster                0.7.12    c:\users\me\appdata\local\programs\python\python38\lib\site-packages pip
apipkg                   1.5       c:\users\me\appdata\local\programs\python\python38\lib\site-packages pip
argcomplete              1.10.3    c:\users\me\appdata\local\programs\python\python38\lib\site-packages pip
astroid                  2.3.3     c:\users\me\appdata\local\programs\python\python38\lib\site-packages pip
...

Deze functie is geïntroduceerd in pip10.0.0b1. Op Ubuntu 18.04(Bionic Beaver), pipof pip3geïnstalleerd met sudo apt install python-pipof sudo apt install python3-pipis 9.0.1 wat niet hebben deze functie.

Controleer https://github.com/pypa/pip/issues/5599voor geschikte manieren om pipof pip3te upgraden.


Antwoord 4, autoriteit 30%

De gemakkelijkste manier is waarschijnlijk

pip3 -V

Dit laat je zien waar je pip is geïnstalleerd en dus waar je pakketten zich bevinden.


Antwoord 5, autoriteit 10%

Pip installeert standaard op Linux pakketten naar /usr/local/lib/python2.7/dist-packages.

Het gebruik van virtualenv of –user tijdens de installatie zal deze standaardlocatie wijzigen. Als u pip showgebruikt, zorg er dan voor dat u de juiste gebruiker gebruikt, anders ziet pipmogelijk niet de pakketten waarnaar u verwijst.


Antwoord 6, autoriteit 10%

In een Python-interpreter of -script kun je dat doen

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

en

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

Voor locaties worden pakketten van derden (die niet in de kerndistributie van Python zitten) geïnstalleerd.

Op mijn Homebrew-geïnstalleerde Python op macOS, de voormalige outputs

p>

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

die canonicaliseert naar hetzelfde pad dat wordt uitgevoerd door pip show, zoals vermeld in een eerder antwoord:

$ 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

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


Antwoord 7, autoriteit 5%

Men kan het pakket importeren en vervolgens de hulp raadplegen

import statsmodels
help(sm)

Helemaal onderaan de help is er een sectie FILEdie aangeeft waar dit pakket is geïnstalleerd.

Deze oplossing is getest met ten minste matplotlib (3.1.2) en statsmodels (0.11.1) (python 3.8.2).

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Other episodes