Je rencontre un problème lors de l'importation de modules dans mon bloc-notes iPython/Jupyter. Le problème réside essentiellement dans la direction vers laquelle pointe sys.path.
Depuis le bloc-notes iPython/Jupyter, sys.executable
Retour:
'/usr/bin/python'
Cependant, à partir de la ligne de commande, il renvoie:
'//anaconda/bin/python'
J'ai essayé de désinstaller et de réinstaller anacondas, mais le problème persiste.
J'ai également essayé d'augmenter $ PYTHONPATH dans mon bash_profile pour inclure // anaconda/bin/python, mais cela ne le résout pas.
Existe-t-il de toute façon de modifier le sys.path dans mon carnet jupyter de façon permanente, sans simplement utiliser sys.path.append (...)?
Ouvrez une nouvelle fenêtre de terminal et voyez si cela aide. Sinon, passez à l'étape 2.
Démarrez une session standard Python à partir du terminal et tapez ceci:
>>> import sys
>>> sys.executable
Faites de même dans le cahier:
In [1]: import sys
sys.executable
Comparez les résultats. Espérons que cela vous donne une idée de ce qui se passe.
J'ai eu le même problème. Après avoir traversé de nombreuses (comme beaucoup trop) de solutions à ce problème trouvées ailleurs, je parviens à trouver une solution qui fonctionne au moins dans mon cas.
Allez sur la ligne de commande, activez l'environnement conda qui pose problème et vérifiez le chemin exécutable correct pour l'environnement.
conda activate {envronment name};
puis sur python, (>>>) import sys;sys.executable
Par exemple, sous Linux, ce sera /media/{username}/{path-to}/anaconda3/envs/{environment name}/bin/python
À partir de la ligne de commande, vérifiez le chemin d'accès où kernel.json
de votre environnement conda problématique est localisé.
jupyter kernelspec list
Par exemple sous Linux ce sera: /home/{username}/.local/share/jupyter/kernels/{environment name}
Ouvrez le kernel.json
situé dans ce dossier et remplacez le chemin exécutable incorrect, comme indiqué ci-dessous.
{
"argv": [
"REPLACE-THIS-WITH-THE-CORRECT-EXECUTABLE-PATH",
"-m",
"ipykernel_launcher",
"-f",
"{connection_file}"
],
"display_name": "heterodimers",
"language": "python"
}
J'espère que cela fonctionne aussi dans votre cas.