2017-10-03 10 views
0

私はPythonとJupyterの両方を管理するためにAnacondaを使用しています。Jupyter kernelspecをanaconda pythonを指すように変更する

>> which python 
>> /home/.../software/anaconda3/bin/python 

>> which jupyter 
>> /home/.../software/anaconda3/bin/jupyter 

しかしsys.pathがJupyter Pythonで異なるためJupyterのPythonのカーネルは、アナコンダを通じてシステムのPythonのバージョンではなく、私の地元のバージョンを指しているように見える3:それはありますノート。また、jupyter kernelspec listは以下を与える:

Available kernels: 
    ir   /usr/local/share/jupyter/kernels/ir 
    matlab  /usr/local/share/jupyter/kernels/matlab 
    python3 /usr/local/share/jupyter/kernels/python3 

docsは、セクション1.5.5に言うので、これは全く驚くことでは思われない:

デフォルトでは、カーネルの仕様は、システム全体の場所に移動します(例:/ usr/local/share/jupyter/kernels)。 --userをインストールすると、カーネルの仕様はJUPYTER_DATA_DIRの場所に入ります。

私は、コマンドラインで使用するPythonのバージョンをJupyterでアクセスするものと同じにします。その結果、と思って、私の望むアナコンダのPythonバージョン、すなわち/home/.../software/anaconda3/bin/pythonを指し示すように、私のjupyter kernelspecリストをpython3に変更することを考えてください。私の質問は次のとおりです。1)実際に私の指定した設定のための最良の解決策です.2)python3のjupyter kernelspecエントリを実際に変更するにはどうすればいいですか?これが起こるかどうかはわかりませんが、私は仮想環境を使いたくありません。デフォルトは、コマンドラインとJupyterの両方で同じバージョンのPythonにします。

答えて

0

1)ジュピターカーネル/usr/local/は、確かにグローバルインストールです。しかし、なぜあなたのanaconda python3インタプリタにリンクできないのかわかりません。

pip install ipykernel 
python -m ipykernel install --prefix=/usr/local/ --name "anaconda_kernel" 

グローバルインストール、またはあなたがあたり、ユーザがインストールしたい場合/usr/local/を変更するために:明示的jupyterあなたが実行することができますインストールするには、アナコンダインタプリタをリンクする

2)。ドキュメントはanacondaのために特別に設定されていますhere

あらかじめjupyter kernelspec remove python3と組み合わせておけば、デフォルトでanacondaカーネルをリセットすることができます。

+0

2)のヒントは、「anaconda_kernel」という名前のanacondaにリンクされた別のpythonカーネルを作成します。私は自分のユーザアカウントでこれを試してみました。 '/ tmp/share/jupyter/kernels/python3 /.../ share/jupyter/kernels/anaconda_kernel'に' kernelspec anaconda_kernelをインストールしましたが、 'jupyter kernelspec list'は同じものを表示します前と同じようにカーネル。また、あなたの答えのリンクはどこにも行きません。 – itf

+0

申し訳ありませんがリンクを編集しました。多分あなたは '--prefix =/usr/local /'を適応させなければならないかもしれません。例:Ubuntuでユーザーごとにインストールするために '〜/ .local/share'を試してみるかもしれません。 – MCMZL

関連する問題