2017-10-08 5 views
1

Ich versuche, die Anaconda-Verteilung von Python-Bibliotheken in einem Jupyter Notebook auszuführen, aber wenn ich das Notebook laufen lasse, bekomme ich ImportErrors, weil der Python-Pfad auf den Standard gesetzt ist Verteilung von Mac OS X 10.11Jupyter Notebook, falsche sys.path und sys.executable

Wenn ich die sys.path und sys.executable ausdrucken, unterscheiden sie sich beim Ausführen von Python vs laufenden jupyter Notebook. Zum Beispiel

from pprint import pprint as p 
import sys 

p(sys.path) 

Danach in Python zu tun bekomme ich die richtige Ausgabe:

['', 
'/Users/glennraskovich/anaconda2/lib/python27.zip', 
'/Users/glennraskovich/anaconda2/lib/python2.7', 
'/Users/glennraskovich/anaconda2/lib/python2.7/plat-darwin', 
'/Users/glennraskovich/anaconda2/lib/python2.7/plat-mac', 
'/Users/glennraskovich/anaconda2/lib/python2.7/plat-mac/lib-scriptpackages', 
'/Users/glennraskovich/anaconda2/lib/python2.7/lib-tk', 
'/Users/glennraskovich/anaconda2/lib/python2.7/lib-old', 
'/Users/glennraskovich/anaconda2/lib/python2.7/lib-dynload', 
'/Users/glennraskovich/anaconda2/lib/python2.7/site-packages', 
'/Users/glennraskovich/anaconda2/lib/python2.7/site-packages/aeosa'] 

Aber wenn dies in jupyter Notebook läuft ich:

['', '/usr/local/lib/python2.7/site-packages/dask-0.11.0-py2.7.egg', '/usr/local/lib/python2.7/site-packages/networkx-1.11-py2.7.egg', '/usr/local/lib/python2.7/site-packages/six-1.10.0-py2.7.egg', '/usr/local/lib/python2.7/site-packages/Pillow-3.3.1-py2.7-macosx-10.11-x86_64.egg', '/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/lib/python27.zip', '/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/lib/python2.7', '/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin', '/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac', '/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages', '/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk', '/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-old', '/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/site-packages', '/Library/Python/2.7/site-packages', '/usr/local/lib/python2.7/site-packages/IPython/extensions', '/Users/glennraskovich/.ipython']

Für die sys .executable,

p(sys.executable) 

In Python, korrekte Ausgabe:

/Users/glennraskovich/anaconda2/bin/python 

Aber in jupyter Notebook wird sys.executable nicht

/usr/local/opt/python/bin/python2.7 

I PATH Einstellung in meinem .bashrc und Bash_profile habe versucht, auf die Anakonda Version eingestellt und mit den Befehlen, die Python, die Jupyter und solche Anaconda-Pfade aber Jupyter Notebook zeigt nicht die Anaconda-Pfade. Was könnte das Problem hier sein?

+0

Sie verwechseln sys.path für den Notebook-Server und sys.path für den von Ihnen ausgeführten Kernel. – Matt

+0

Also ist es der sys.path für den Kernel muss ich irgendwie ändern? Wie kann ich das beheben? –

Antwort

0

dachte ich die Lösung aus, da der Kernel die Standard-Mac OS X Python ich es python2 mithilfe der Befehle

fixiert verwenden wurde eingestellt -m pip ipykernel

python2 -m ipykernel installieren installieren - -user