sys.chemin différent en Jupyter et Python - comment importer ses propres modules en Jupyter?
dans Jupyter mon propre petit module n'est pas chargé mais en python/bpython tout va bien. En tapant
import sys
print(sys.path)
le chemin vers mon module n'apparaîtra pas dans Jupyter mais dans python/bpython il est toujours là.
j'utilise:
- PYTHONPATH in .bashrc pour inclure mon module,
- Jupyter et bpython à l'intérieur d'un virtualenv.
Le plus semblable questions est-ce ne peut pas importer de modules dans le carnet jupyter; mauvais système.chemin
comment configurer Jupyter pour charger mes modules de manière automatique?
3 réponses
Voici ce que je fais sur mes projets en jupyter notebook,
import sys
sys.path.append("../") # go to parent dir
from customFunctions import *
puis, pour affecter les changements dans customFunctions.py
,
%load_ext autoreload
%autoreload 2
Jupyter a sa propre variable de chemin, JUPYTER_PATH.
ajouter cette ligne au fichier .bashrc
travaillé pour moi:
export JUPYTER_PATH=<directory_for_your_module>:$JUPYTER_PATH
Jupyter est la base d'ipython, une solution permanente pourrait changer les options de configuration d'ipython.
créer un fichier de configuration
$ ipython profile create
$ ipython locate
/Users/username/.ipython
modifier le fichier de configuration
$ cd /Users/username/.ipython
$ vi profile_default/ipython_config.py
les lignes suivantes vous permettent d'ajouter votre chemin de module à sys.chemin
c.InteractiveShellApp.exec_lines = [
'import sys; sys.path.append("/path/to/your/module")'
]
au démarrage de jupyter la ligne précédente sera exécutée
Ici, vous pouvez trouver plus de détails sur ipython config https://www.lucypark.kr/blog/2013/02/10/when-python-imports-and-ipython-does-not /