wake-up-neo.com

Wie kann ich ein Python-Paket von IPython aus installieren?

Ich frage mich, ob es möglich ist, Python-Pakete zu installieren, ohne die IPython-Shell zu verlassen.

36
satoru

Sie können das Präfix ! folgendermaßen verwenden:

!pip install packagename

Das !-Präfix ist eine Abkürzung für den %sc-Befehl, um einen Shell-Befehl auszuführen.

Sie können auch das Präfix !! verwenden, das eine Abkürzung für den Befehl %sx ist, um einen Shell-Befehl auszuführen und dessen Ausgabe zu erfassen (standardmäßig in der Variablen _ gespeichert).

73
aculich

Das akzeptierte Antwort von aculich funktioniert nicht unter allen Umständen, zum Beispiel:

  • Wenn Sie ipython/jupyter in einem venv installiert und direkt über die python-Datei von venv ausgeführt haben
  • Wenn Sie über mehrere Python-Versionen verfügen, z. B. EntryLevelR .

Der korrekte Befehl lautet:

import sys
!{sys.executable} -m pip install requests
5
Chronial
import pip
pip.main(['install', 'package_name'])

Die obigen Shell-basierten Antworten funktionieren nur, wenn sich pip in Ihrem $ PATH befindet (z. B. unter Windows).

2
hurfdurf

Ich mag die Antwort von hurfdurf, aber an sich erkennt iPython das neue Modul möglicherweise nicht (insbesondere wenn es den Bibliothekspfad hinzufügt). Hier ist ein erweitertes Beispiel mit iPython 3:

import pip
pip.main(['install','pygame'])
# import pygame at this point can report ImportError: No module named 'pygame'
import site
site.main()
# now with refreshed module path...
import pygame
0
Daniel