Folgendes findet in einer virtuellen Python 3-Umgebung statt.Warum installiert `pip3 numpy` viel schneller als in` install_requires`?
Ich habe gerade ein kleines Paket geschrieben, das numpy
erfordert. Also, in setup.py
, schrieb ich install_requires=['numpy']
. Ich lief python3 setup.py install
, und es dauerte etwa zwei Minuten - ich habe die Vollbild-Dump von Protokollen, Warnungen und Konfigurationen, die normalerweise mit einer nepy Installation kommt.
Dann habe ich eine neue virtuelle Umgebung erstellt, und dieses Mal schrieb einfach pip3 install numpy
- die nur ein paar Sekunden dauerte - und dann lief python3 setup.py install
, und ich war fast sofort fertig.
Was ist der Unterschied zwischen den beiden und warum war pip3 install numpy
so viel schneller? Sollte ich also ein requirements.txt
nur einschließen, damit Leute die Anforderungen pip-installieren können anstatt setuptools zu verwenden?
Beachten Sie, dass, wenn ich pip3 install numpy
schrieb, bekam ich folgendes:
Collecting numpy
Using cached numpy-1.12.0-cp36-cp36m-manylinux1_x86_64.whl
Installing collected packages: numpy
Successfully installed numpy-1.12.0
Ist es möglich, dass dies so viel schneller war, weil das numpy Rad wurde bereits zwischengespeichert?
Verwendung von ** im Cache ** numpy? – McGrady
@McGrady Ja, ich nehme an, dass dies das Rad zwischengespeichert hat, nicht die eigentliche Installation. Wenn ich numpy mit setuptools installiere, werden nur ein paar Sekunden für den Download benötigt - der Rest der Zeit wird für die Installation benötigt. – Newb
Wenn Sie versuchen, Ihr Paket in einem neuen Programm zu installieren, ist es jetzt schneller als es das erste Mal war? – Eric