2016-08-07 5 views
0

Ich bin auf einem Linux-System, auf dem nur Python 2.7 installiert ist. Ich habe Anaconda mit Python 3.5 in meinem Home-Ordner installiert. Ich installierte auch die neueste Version von IPython mit conda install ipython. Wenn ipython an der Konsole ausgeführt wird, erhalte ich:IPython startet nicht mit lokal installiertem Python 3.5

Traceback (most recent call last): 
    File "/home/mateinfo/vlad/anaconda3/bin/ipython", line 4, in <module> 
    import IPython 
    File "/home/mateinfo/vlad/anaconda3/lib/python3.5/site-packages/IPython/__init__.py", line 49, in <module> 
    from .terminal.embed import embed 
    File "/home/mateinfo/vlad/anaconda3/lib/python3.5/site-packages/IPython/terminal/embed.py", line 16, in <module> 
    from IPython.core.interactiveshell import DummyMod, InteractiveShell 
    File "/home/mateinfo/vlad/anaconda3/lib/python3.5/site-packages/IPython/core/interactiveshell.py", line 31, in <module> 
    from pickleshare import PickleShareDB 
    File "/home/mateinfo/vlad/anaconda3/lib/python3.5/site-packages/pickleshare.py", line 41, in <module> 
    from path import path as Path 
    File "/opt/pcm/lib/python/path.py", line 919 
    def mkdir(self, mode=0777): 

Soweit ich das beurteilen kann, ist das Problem mit dem verwendeten path Modul ist, das von Python 2.7 zu sein scheint, da es das alte Oktalformat 0777 verwendet.

Wie kann ich IPython in diesem Setup arbeiten?

Ich habe dies in meinem .bashrc:

# added by Anaconda3 4.0.0 installer 
export PATH="/home/mateinfo/vlad/anaconda3/bin:$PATH" 
export PATH="/home/mateinfo/vlad/anaconda3/lib:$PATH" 
export PATH="/home/mateinfo/vlad/anaconda3/lib/python3.5:$PATH" 

nur die erste Zeile wurde von den Anaconda-Installer hinzugefügt, die anderen 2 von mir hinzugefügt wurden, ohne Erfolg.

+0

Die einzige benötigte Zeile ist der Ordner 'bin'. Nichts mehr. Das Problem liegt woanders. – MaxNoe

+1

Hast du ein 'PYTHONPATH' Set? Wenn ja, deaktiviere PYTHONPATH – MaxNoe

+0

@MaxNoe das war es. Ich hatte keine Ahnung, dass es doch festgelegt war. Wenn Sie eine Antwort daraus machen, werde ich es akzeptieren, danke. – IVlad

Antwort

1

Sie könnten die Umgebungsvariable PYTHONPATH auf einen Speicherort festlegen, an dem sich eine Python2-Bibliothek befindet.

Als allgemeine Empfehlung, niemals diese Variable verwenden. Erstellen Sie geeignete setup.py Skripts für Ihre Bibliotheken.

Um es loszuwerden, können Sie unset PYTHONPATH tun oder alles, was diese Variable in Ihrem .bashrc setzt, beseitigen.