Ist es das, was die Leute am häufigsten zu empfehlen scheinen:
$ sudo apt-get install python-setuptools
$ sudo easy_install pip
$ sudo pip install virtualenv
Oder das, was ich von http://www.pip-installer.org/en/latest/installing.html bekommen habe :
$ curl -O https://github.com/pypa/virtualenv/raw/master/virtualenv.py
$ python virtualenv.py my_new_env
$ . my_new_env/bin/activate
(my_new_env)$ pip install ...
Oder etwas ganz anderes?
quelle
ez_setup.py
nach einer "leichten Version" suchen, um Pip zu bekommen. Ich würde das gleiche tun, aber befürchten, dass es in naher Zukunft brechen wird und ich werde hier wieder stecken bleiben (wie ich es immer tue)wget --no-check-certificate https://raw.github.com/pypa/pip/master/contrib/get-pip.py
und dannpython get-pip.py
(möglicherweisehttps://bootstrap.pypa.io/get-pip.py
. Wahrscheinlich besser, nur um auf die offiziellen Anweisungen zu verlinken.http://www.pip-installer.org/en/latest/installing.html ist wirklich die kanonische Antwort auf diese Frage.
Insbesondere lauten die systemweiten Anweisungen:
Der in der Frage zitierte Abschnitt enthält
virtualenv
eher Anweisungen als systemweite Anweisungen. Dieeasy_install
Anweisungen gibt es schon länger, aber es ist nicht mehr nötig, dies so zu tun.quelle
virtualenv
in der Frage zitierten Anweisungen zu verdeutlichen .Diese Antwort stammt von @webology auf Twitter:
Meine hinzugefügten Notizen:
quelle
$ sudo apt-get install python-pip
. Durch die Installation von python-pip werden auch python-setuptools installiert.Unter Ubuntu 12.04 hatte ich viel Glück mit dem Paketmanager:
quelle
python-pip 1.0-1build1
die Anfang 2011 undvirtualenvwrapper 2.11.1-21
Januar 2012 veröffentlicht wurde. Mit der Antwort von @Richard Jones erhalten Sie die neuesten Informationen.Es gibt keine bevorzugte Methode - alles hängt von Ihren Bedürfnissen ab. Oft müssen Sie aus irgendeinem Grund verschiedene Python-Interpreter auf dem System haben. In diesem Fall müssen Sie das Material für jeden Interpreter einzeln installieren. Abgesehen davon: Ich bevorzuge es, Dinge selbst zu installieren, anstatt von vorgefertigten Dingen abhängig zu sein, die manchmal Probleme verursachen - aber das ist nur eine mögliche Option.
quelle
Es gibt wirklich keine einzige "Antwort" auf diese Frage, aber es gibt definitiv einige hilfreiche Konzepte, die Ihnen helfen können, eine Entscheidung zu treffen.
Die erste Frage, die in Ihrem Anwendungsfall beantwortet werden muss, lautet "Möchte ich das System Python verwenden?". Wenn Sie Python verwenden möchten, das mit Ihrem Betriebssystem verteilt wird, ist die Verwendung der Installationsmethode apt-get möglicherweise in Ordnung. Abhängig von der Verteilungsmethode des Betriebssystems müssen Sie jedoch noch weitere Fragen stellen, z. B. "Möchte ich mehrere Versionen dieses Pakets installieren?" Wenn die Antwort ja ist, ist es wahrscheinlich keine gute Idee, so etwas wie apt zu verwenden. Dpkg entpackt so ziemlich nur ein Archiv im Stammverzeichnis des Dateisystems. Es ist also Sache des Paketverwalters, sicherzustellen, dass das Paket unter sehr geringen Voraussetzungen sicher installiert wird. Bei den meisten Debian-Paketen würde ich davon ausgehen (jemand kann mich hier gerne korrigieren), dass sie einfach entpacken und ein Top-Level-Paket bereitstellen.
Angenommen, das Paket ist "virtualenv"
/usr/lib/python2.x/site-packages/virtualenv
. Wenn Sie es mit installieren, erhalteneasy_install
Sie möglicherweise so etwas/usr/lib/python2.x/site-packages/virtualenv.egg-link
,/usr/lib/python2.x/site-packages/virtualenv-1.2-2.x.egg
das auf ein Verzeichnis oder ein komprimiertes Ei verweist. Pip macht etwas Ähnliches, obwohl es keine Eier verwendet und stattdessen das Paket der obersten Ebene direkt imlib
Verzeichnis ablegt.Ich bin vielleicht auf dem Weg, aber der Punkt ist, dass jede Methode unterschiedliche Bedürfnisse berücksichtigt. Aus diesem Grund sind Tools wie virtualenv hilfreich, da Sie Ihre Python-Bibliotheken so sandboxen können, dass Sie eine beliebige Kombination von Bibliotheken und Versionen verwenden können.
Setuptools ermöglicht auch die Installation von Paketen als Multiversion, was bedeutet, dass kein einzelnes Mo
dule_name.egg-link
erstellt wird. Um diese Pakete zu importieren, müssen Sie pkg_resources und die__import__
Funktion verwenden.Zurück zu Ihrer ursprünglichen Frage: Wenn Sie mit dem Systempython zufrieden sind und planen, mit virtualenv und pip Umgebungen für verschiedene Anwendungen zu erstellen, erscheint die Installation von virtualenv und / oder pip auf Systemebene mit apt-get völlig angemessen. Ein Wort der Vorsicht ist jedoch, dass, wenn Sie planen, Ihre Distributionen Python zu aktualisieren, dies einen Welleneffekt durch Ihre virtuellen Umgebungen haben kann, wenn Sie wieder auf Ihre System-Site-Pakete verlinken.
Ich sollte auch erwähnen, dass keine dieser Optionen von Natur aus besser ist als die anderen. Sie verfolgen einfach unterschiedliche Ansätze. Die Verwendung der Systemversion ist eine hervorragende Möglichkeit, Python-Anwendungen zu installieren. Die Entwicklung mit Python kann jedoch sehr schwierig sein. Einfache Installation und Setuptools sind in einer Welt ohne virtuelle Umgebung sehr praktisch. Wenn Sie jedoch verschiedene Versionen derselben Bibliothek verwenden müssen, wird dies auch ziemlich unhandlich. Pip und virtualenv verhalten sich eher wie eine virtuelle Maschine. Anstatt darauf zu achten, dass die Dinge nebeneinander installiert werden, erstellen Sie einfach eine völlig neue Umgebung. Der Nachteil hierbei ist, dass Sie über 30 virtuelle Umgebungen später möglicherweise ziemlich viel Speicherplatz verbraucht und Ihr Dateisystem überfüllt haben.
Wie Sie sehen, ist es bei den vielen Optionen schwierig zu sagen, welche Methode verwendet werden soll, aber mit einer kleinen Untersuchung Ihrer Anwendungsfälle sollten Sie in der Lage sein, eine Methode zu finden, die funktioniert.
quelle
Mach das:
Sehen
quelle
Da virtualenvs standardmäßig pip enthalten, installiere ich pip fast nie global. Was ich mache, sieht am Ende eher so aus:
Ich installiere und richte dann virtualenvwrapper nach meinen Wünschen ein und los geht's. Es könnte sich auch lohnen, einen Blick auf Jeremy Avnets virtuellen Env-Burrito zu werfen:
https://github.com/brainsik/virtualenv-burrito
quelle
@ericholscher sagt auf Twitter: "Der in den offiziellen Dokumenten .."
Es ist ein großartiger Punkt, Sie sollten tun, was die Dokumente sagen.
Zitiert aus den offiziellen Installationsanweisungen für Pip unter http://www.pip-installer.org/en/latest/installing.html :
quelle
Ausgehend von Distributionspaketen können Sie entweder Folgendes verwenden:
Hiermit können Sie virtuelle Umgebungen erstellen, oder
Hiermit können Sie beliebige Pakete in Ihrem Home-Verzeichnis installieren.
Wenn Sie an virtualenv gewöhnt sind, erhalten Sie mit dem ersten Befehl alles, was Sie benötigen (denken Sie daran, pip ist gebündelt und wird in jedem von Ihnen erstellten virtualenv installiert).
Wenn Sie nur Pakete installieren möchten, erhalten Sie mit dem zweiten Befehl das, was Sie benötigen. Verwenden Sie pip wie folgt:
und so etwas setzen
in deinem
~/.bashrc
.Wenn Ihre Distribution uralt ist und Sie ihre Pakete überhaupt nicht verwenden möchten (außer wahrscheinlich Python selbst), können Sie virtualenv entweder als Tarball oder als eigenständiges Skript herunterladen:
Wenn Ihre Distribution eher auf dem neuesten Stand ist, verfügt Python3.3 über integrierte virtuelle Funktionen:
Dies läuft viel schneller, aber Setuptools und Pip sind nicht enthalten.
quelle
Um pip auf einem Mac (osx) zu installieren, hat der folgende Liner für mich hervorragend funktioniert:
quelle
In Raspbian gibt es nicht einmal eine Notwendigkeit zu erwähnen
python2.7
. In der Tat ist dies der beste Weg, um pip zu installieren, wenn die Python-Version in weniger als 2.7.9.Danke an @ tal-weiss
quelle
https://github.com/pypa/pip/raw/master/contrib/get-pip.py ist jetzt wahrscheinlich der richtige Weg.
quelle
pip install virtualenv
danach.Ich benutze get-pip und virtualenv-burrito, um all dies zu installieren. Ich bin mir nicht sicher, ob Python-Setuptools erforderlich sind.
quelle
Auf Debian wäre der beste Weg, dies zu tun
sudo apt-get install python-pip
quelle
Die erstere Methode ist in Ordnung. Das einzige Problem, das ich sehen kann, ist, dass Sie möglicherweise eine alte Version von setuptools erhalten (wenn das apt-Repository nicht auf dem neuesten Stand gehalten wurde.
quelle