2016-01-24 7 views
21

In Jupyter ist mein eigenes kleines Modul nicht geladen, aber in Python/Bpython ist alles in Ordnung. Wennsys.path anders in Jupyter und Python - wie man eigene Module in Jupyter importiert?

import sys 
print(sys.path) 

der Weg zu meinem Modul nicht in Show in Jupyter Eingabe aber in Python/bpython es ist immer noch da.

Ich verwende:

  1. PYTHONPATH in Bashrc mein Modul enthalten,
  2. Jupyter und bpython in einem virtualenv.

Die meisten ähnlichen Fragen ist diese Cannot import modules in jupyter notebook; wrong sys.path

Wie Jupyter konfigurieren meine Module automatisch zu laden? Hier

+0

haben Sie versucht mit 'sys.path.append ('/ path/to/your/Code')' in der Jupyter ipython Schale oder Notizbuch? Wenn das funktioniert, können Sie diesen Befehl zum ipython-Profil hinzufügen. – miraculixx

+0

danke für Ihren Hinweis mit dem ipython-Profil. Ich war mir nicht bewusst, dass Ipython/Jupyter es eigene Sache macht. Eine gute Anleitung, was zu tun ist, finden Sie hier http://www.lucypark.kr/blog/2013/02/10/when-python-imports-and-ipython-does-not/ – ulf

+0

Ein allgemeiner Kommentar ist, beide durch zu laufen eine Anakonda-Umgebung. Auf diese Weise a) nicht mit Systemdateien, b) haben beide die gleichen Versionen von Paketen und vermeiden Verwirrungen. Auch für Ihr Modul ist es ziemlich einfach, ein setup.py zu schreiben und eine Ediatble-Version davon in der Umgebung zu installieren. Auf diese Weise können Sie '' 'importieren mein Modul' '' sofort. – GrigorisG

Antwort

11

ist, was ich auf meine Projekte in jupyter Notebook tun,

import sys 
sys.path.append("../") # go to parent dir 
from customFunctions import * 

Dann beeinflussen Änderungen in customFunctions.py,

%load_ext autoreload 
%autoreload 2 
5

Jupyter seine eigene PATH-Variable, JUPYTER_PATH hat.

diese Zeile in der Datei .bashrc Hinzufügen arbeitete für mich:

export JUPYTER_PATH=<directory_for_your_module>:$JUPYTER_PATH