python3カーネルをjupyter(IPython)に追加する方法


322

私のJupyterノートPCは、一緒にインストールpython 2カーネル。私はなぜなのか理解していない。インストールを行ったときに、何かを台無しにした可能性があります。すでにpython 3 インストール済みです。どうすれば追加できJupyterますか?これは、デフォルトでJupyterインストールさpython3 -m install jupyterれ、ブラウザで開かれたデフォルトのスクリーンショットですjupyter notebookここに画像の説明を入力してください


python2デフォルトのカーネルです。ipythonをpython2インタープリターにインストールしたのでpython2、デフォルトのカーネルとしても取得します。代わりににインストールしたpython3.x場合、デフォルトでpython3カーネルが作成されます。
2015

:私はこのブログはかなり有用であることが判明datapoly.org/2018/06/18/...
クー

回答:


296

これは私にとってUbuntu 16.04でうまくいきました:

python2 -m pip install ipykernel
python2 -m ipykernel install --user

python3 -m pip install ipykernel
python3 -m ipykernel install --user

ドキュメントへの参照:
Python 2および3のカーネル。IPythonカーネルのインストール-IPython Docs。


3
ああ、私はノートブックを更新しました:sudo pip install -U ipykernelと動作しています
Jamesszm

macOS Sierraで動作します。コンダ環境下でも動作します!
osa

ubantu 16.04で作業しました。ノートブックページを更新してください。ありがとう!
ketankk 2018

1
試しましたが、3番目と4番目のコマンドが機能しなかったため、pip3をインストールしてpython3 -m pip install ipykernel python3 -m ipykernel install --user
Mert Cuhaci

Mac Mojaveで完全に動作
mleafer

228

kernelspecをpython2の正しい場所にipykernelインストールして使用ipython kernel installしていることを確認してください。次にipython3 kernel installPython3です。今、あなたは関係なく、あなたが使用しているかどうかの2つのカーネルの間で選択することができるはずjupyter notebookipython notebookまたはipython3 notebook(後の2が推奨されていません)。

特定のPython実行可能ファイルをインストールする場合は、次のトリックを使用できます。

path/to/python -m ipykernel install <options>

これは、環境(venv、condaなど)を使用しているときに機能し、<options>カーネルに名前を付けることができます(を参照--help)。だからできる

conda create -n py36-test python=3.6
source activate py36-test
python -m ipykernel install --name py36-test
source deactivate

そして今py36-test、あなたは他のものと一緒に、あなたのドロップダウンメニューで名前が付けられたカーネルを取得します。

より最近の情報があるIPython NotebookのPython 2.xとPython 3.xの両方の使用を参照してください。


2
最初の指示はうまくいきました。2回目の発行:[TerminalIPythonApp]警告| ファイルが見つかりません: 'kernelspec'
quickbug

2
python3にもIPythonをインストール/アップグレードする必要があります。
Matt

9
--userまたは--prefixユーザーのインストールが必要になる場合があります。これはvenvでも機能しますが、そのロジックは組み込まれていません。kernelspecを複製し、pythonバイナリを明示的に参照する必要があります。
Matt

2
おかげで、これはAnacondaでも私にとってうまくいきました- その後、同じコマンドでipython kernelspec install-selfPython3をアクティブ化しますsource activate python3ipython kernelspec install-self
Colin Gravill

3
dazzleのソリューションは、Ubuntu 14.04(以下で回答)で私のために機能しました。しましたsudo apt-get remove ipython3 ipython3-notebook; sudo apt-get install pip3; sudo pip3 install ipython; sudo ipython kernelspec install-self; sudo ipython3 kernelspec install-self。その後、私はipython notebook通常起動したときに新しいpython3ノートブックのオプションがありました。
Teque5

125
  1. Python2でipythonノートブックを入手(Windows7)
  2. でJupyterにアップグレードする pip install -U jupyter
  3. Python3をインストールする
  4. を使用してJupyterを再インストールします pip3 install jupyter
  5. を使用してPython3カーネルをインストールする ipython3 kernelspec install-self
  6. ようやく2つのカーネルが動作しました。

素晴らしい結果


1
ターミナルメッセージでは、ipythonではなく「jupyter」の使用を推奨しています。それでも動作します!
ジュリアン

2
はい、やっと!ipython3 kernelspec install-selfコマンドなしでは、python2の代わりにpython3カーネルを置き換えました。あなたより。
エミリオフェルッチ2016

1
代わりにステップ6でipython kernel installを実行します。ipython3 kernelspec install-self機能しなくなり、jupyter kernelspec install-self非推奨になりました。
ambodi 2017年

あなたの何PYTHONPATH上記の各ステップで?
user3226167 2017


74

jupyter / ipythonの最近のバージョンの場合jupyter kernelspec

完全なドキュメント:https : //ipython.readthedocs.io/en/latest/install/kernel_install.html

現在のカーネルを一覧表示する

$ jupyter kernelspec list
Available kernels:
  python2    .../Jupyter/kernels/python2
  python3    .../Jupyter/kernels/python3

私の場合、リンクされたpy3.5が存在しなくなったため、python3カーネルのセットアップが壊れ、py3.6に置き換えられました。

カーネルの追加/削除

削除する:

$ jupyter kernelspec uninstall python3

新しいもの を追加します。追加したいPythonを使用して、木星を実行するpythonをポイントします。

$ /path/to/kernel/env/bin/python -m ipykernel install --prefix=/path/to/jupyter/env --name 'python-my-env'

https://ipython.readthedocs.io/en/6.5.0/install/kernel_install.html#kernels-for-different-environmentsで他の例をご覧ください

もう一度リスト:

$ jupyter kernelspec list
Available kernels:
  python3    /usr/local/lib/python3.6/site-packages/ipykernel/resources
  python2    /Users/stefano/Library/Jupyter/kernels/python2

ドキュメント:https : //jupyter-client.readthedocs.io/en/latest/kernels.html#kernelspecs

細部

利用可能なカーネルはkernels、Jupyter DATA DIRECTORYのフォルダーの下にリストされています(詳細については、http: //jupyter.readthedocs.io/en/latest/projects/jupyter-directories.html を参照してください)。

たとえば、macosxでは /Users/YOURUSERNAME/Library/Jupyter/kernels/

カーネルはkernel.jsonファイルなどで簡単に記述されます。ために/Users/me/Library/Jupyter/kernels/python3/kernel.json

{
 "argv": [
  "/usr/local/opt/python3/bin/python3.5",
  "-m",
  "ipykernel",
  "-f",
  "{connection_file}"
 ],
 "language": "python",
 "display_name": "Python 3"
}

手動で操作するのではなく、kernelspec(上記のように)コマンドを使用できます。それは(今jupyterを通じてipythonを通じて以前利用可能だったhttp://ipython.readthedocs.io/en/stable/install/kernel_install.html#kernels-for-different-environments - https://jupyter-client.readthedocs.io/ en / latest / kernels.html#kernelspecs)。

$ jupyter kernelspec help
Manage Jupyter kernel specifications.

Subcommands
-----------

Subcommands are launched as `jupyter kernelspec cmd [args]`. For information on
using subcommand 'cmd', do: `jupyter kernelspec cmd -h`.

list
    List installed kernel specifications.
install
    Install a kernel specification directory.
uninstall
    Alias for remove
remove
    Remove one or more Jupyter kernelspecs by name.
install-self
    [DEPRECATED] Install the IPython kernel spec directory for this Python.

To see all available configurables, use `--help-all`

他の言語のカーネル

ちなみに、この質問に厳密に関連しているわけではありませんが、他にもたくさんのカーネルがあります... https://github.com/jupyter/jupyter/wiki/Jupyter-kernels


コメントなしで反対票を獲得しました...これが機能しない場合は知っておくと面白いでしょう!
ステファノ

2
すばらしい答えです。私は1週間この問題に直面しており、解決策を理解できませんでした。私はあなたの解決策を以前に見ていたはずです;)
DucCuong 2017

5
Mac OS xバージョン10.13.5では動作しません。Python3はbrewを使用してインストールされ、jupyterはpip3でインストールされます。python2カーネルのみを提供します。kernelspec install <path_to_python_3>は機能しているようですが、kernelspecリストに表示されません。
ジェームズK.ポーク大統領

@JamesKPolk簡潔な説明から問題をデバッグするのは非常に困難ですが、私のpy3がpyenvから来ていることを除いて、同様のインストールを行いました(brewから直接複数のバージョンを管理するよりも簡単です)。
ステファノ

1
それも私にはうまくいきません。私が実行した後jupyter kernelspec install $HOME/.pyenv/versions/metrics/bin --name=metricskernel --user、私が得るInstalled kernelspec metricskernel in $HOME/.local/share/jupyter/kernels/metricskernel、しかし、したがって、それはでリストされていない無kernel.json内側にはありませんkernelspec list。代わりに、中にはからコピーされ$HOME/.pyenv/versions/metrics/binたスクリプトの束があります。@JamesKPolkそれはあなたの問題に似ていますか?あなたはそれを解決することができましたか?
Hlib Babii

39

あなたがanacondaディストリビューションを使用している場合、これは(macintosh上で)私にとってはうまくいきました:

$ conda create -n py3k python=3 anaconda

$ source activate py3k

$ ipython kernelspec install-self

最後のコマンドのメモ:

(py3k)Monas-MacBook-Pro:cs799 mona$ ipython kernelspec install-self
[TerminalIPythonApp] WARNING | Subcommand `ipython kernelspec` is deprecated and will be removed in future versions.
[TerminalIPythonApp] WARNING | You likely want to use `jupyter kernelspec` in the future
[InstallNativeKernelSpec] WARNING | `jupyter kernelspec install-self` is DEPRECATED as of 4.0. You probably want `ipython kernel install` to install the IPython kernelspec.
[InstallNativeKernelSpec] Installed kernelspec python3 in /usr/local/share/jupyter/kernels/python3
(py3k)Monas-MacBook-Pro:cs799 mona$ ipython kernel install 
Installed kernelspec python3 in /usr/local/share/jupyter/kernels/python3

上記の手順でOSX Yosemiteでテストしjupter notebook、ブラウザーで新しいノートブックを入力および作成すると、次のスクリーンショットが表示されます。 ここに画像の説明を入力してください


4
私のために働いたが、私は、ユーザーの特定のインストールを持っているように、--user追加する必要がありました:
brianray

魅力的な作品!
SeaWarrior404 2017年

install-self廃止されます。
クリスチャンヒュードン2018

31

次のコマンドは、macOS Sierra(10.12.3)で機能します

python3 -m pip install ipykernel
python3 -m ipykernel install --user

jupyter kernelspecリストで確認してください。利用可能なカーネル:python3 / Users / admin / Library / Jupyter / kernels / python3 python2 / anaconda2 / share / jupyter / kernels / python2


1
Ubuntu 18.04で私のために
働く

私のWindows 7マシンでも動作します。
クリスチャンK.

彼のWindows 10マシンでも動作します。
スイス

High Sierra 10.13.6でも動作します。
spacetyper

26

次のコマンドを使用して、macOS El Capitan(ipythonバージョン:4.1.0)にpython3カーネルを正常にインストールしました。

python3 -m pip install ipykernel
python3 -m ipykernel install --user

インストールされているすべてのカーネルをで確認できますjupyter kernelspec list

詳細はこちら


おかげで、それはLinux Mintでも機能しました。pip3そしてPython3-setuptoolsまた必要とされました。
カルダモン2017年

19

ターミナル(またはウィンドウの場合はcmd)を開き、次のコマンドを実行します(ウィンドウで、2行目に「ソース」をドロップします)。

conda create -n py35 python=3.5
source activate py35
conda install notebook ipykernel
ipython kernel install --user --name=python3.5

いくつかの方法を試しましたが、うまくいきませんでした。それは私と一緒に働いた。それが役立つことを願っています。


私のために働いた。Mac OS 10.10.4を使用しています。私はPython 2.7でipythonノートブックを使用していました。Python 3.5はすでにインストールされています。次に、上記の4つの手順に従って、JupyterノートブックでPython3およびPython3.5を正常に取得しました。
ビルアンカラゴン、黒2016

Windows 10の魅力のように動作しました
コードアサシン

「ソース」は、内部または外部コマンド、操作可能なプログラムまたはバッチファイルとして認識されません。
アブドラは

1
@AbdullahSaid:Windowsを使用していますか?前述のとおり、Windowsでは、「source activate py35」の代わりに「activate py35」を使用します。お役に立てれば。
Catbuilt

13

私はPython 2.7を使用していて、Jupyter内でPython 3に切り替えられるようにしたいと思っていました。

これらの手順は、Windows Anacondaコマンドプロンプトで機能しました。

conda update conda
conda create -n py33 python=3.3 anaconda
activate py33
ipython kernelspec install-self
deactivate

Python2.7の通常のコマンドでipythonノートブックを開いた後、新しいノートブックを作成するときにPython3.3も使用できます。


これが最良の解決策です
アダム


6

現在のPythonランチャー

Py3がインストールされているが、デフォルトはpy2の場合

py -3 -m pip install ipykernel
py -3 -m ipykernel install --user

Py2がインストールされているが、デフォルトはpy3の場合

py -2 -m pip install ipykernel
py -2 -m ipykernel install --user

5

Ubuntu 14.04では、以前の回答を組み合わせて使用​​する必要がありました。

まず、インストール pip3 apt-get install python-pip3

次に、pip3jupyter をインストールします pip3 install jupyter

次にipython3、カーネルのインストールを使用します ipython3 kernel install


4

ElementaryOS Freya(Ubuntu 14.04ベース)では、他の回答はすぐには機能しませんでした。私は得ていました

[TerminalIPythonApp]警告| ファイルが見つかりません: 'kernelspec'

クイックバグがマットの回答で説明したエラー。私は最初にしなければなりませんでした:

sudo apt-get install pip3、その後

sudo pip3 install ipython[all]

その時点で、Mattが提案したコマンドを実行できます。すなわち:ipython kernelspec install-selfそしてipython3 kernelspec install-self

起動ipython notebookしてノートブックを開くと、[カーネル]メニューからPython 3カーネルを選択できます。


4

私はなんとかPython2に加えてPython3カーネルをインストールしました。ここに私がそれをした方法があります:

  • Jupyterで新しいノートブックを開く
  • ここに2つのセルをコピーして実行します。Enable-Python-3-kernel

最新のリンクはここにあります

実際のコードは次のとおりです。

! mkdir -p ~/.ipython/kernels/python3
%%file ~/.ipython/kernels/python3/kernel.json

{
 "display_name": "IPython (Python 3)", 
 "language": "python", 
 "argv": [
  "python3", 
  "-c", "from IPython.kernel.zmq.kernelapp import main; main()", 
  "-f", "{connection_file}"
 ], 
 "codemirror_mode": {
  "version": 2, 
  "name": "ipython"
 }
}

1
ありがとう!それは私のために動作します(Python 3とJuliaの両方)。
Piotr Migdal

4
リンクの背後にある回答の最も重要な部分を隠さないことをお勧めします(リンクが消えて、回答が役に立たなくなる場合があります)。
クリス、

1
リンクはIAにあります:web.archive.org/web/20160319053446/http
//…

2
@quickbugリンクが壊れています
JPCF 2016

1
@quickbugリンクが壊れています!将来のため答えは必ずスクリーンショットを取ると、あなたが本当に外部リンクに頼ることはできませんでしとしてあなたの答えは全部が含まれて作る
モナジャラル


3

私の側からの最短かつ最良の解決策

conda create --name py3-ml python=3.6
conda install ipykernel

source activate py3-ml # or conda activate py3-ml
python -m ipykernel install --user --name py3-ml

あなたのコードをコメントしてくれませんか?この場合、すでにpythonを手動でインストールするとどうなりますか?
user2305193

3

カーネルを追加することJupyter Notebookは、リストに表示されないバージョンのpython を使用することを意味します。

簡単なアプローチ-必要なpythonバージョンでノートブックを起動します。python3.7インストールした後、ターミナル(cmd)から以下のコマンドを使用してノートブックを実行します。

python3.7 -m notebook

代わりにのpython3.7エイリアスでインストールすることもありpy, py3.7, pythonます。


2

複数のカーネルを単一の仮想環境(VENV)にインストールする

これらの回答のほとんど(すべてではないにしても)は、パッケージをグローバルにインストールできることを前提としています。この答えは、次の場合に当てはまります。

  • * NIXマシンを使用する
  • パッケージをグローバルにインストールしたくない
  • anacondaを使用したくない<->コマンドラインからjupyterサーバーを実行して問題ない
  • カーネルのインストールが「どこに」あるのか、どこにあるのかを知りたい。

(注:この答えはpython2カーネルをpython3-jupyterのインストールに追加しますが、概念的には簡単に入れ替えることができます。)

  1. 前提条件

    1. あなたはjupyterサーバーを実行してファイルを保存するディレクトリにいます
    2. python2がマシンにインストールされている
    3. python3がマシンにインストールされている
    4. virtualenvがマシンにインストールされている
  2. python3 venvを作成してjupyterをインストールする

    1. 新しいpython3 venvを作成します。 python3 -m venv .venv
    2. venvをアクティブ化します。 . .venv/bin/activate
    3. jupyterlabをインストールしますpip install jupyterlab。これにより、ノートブックを実行するために必要なすべてのインフラストラクチャがローカルに作成されます。
    4. 注:ここにjupyterlabをインストールすると、でデフォルトの「カーネル仕様」(以下を参照)も生成されます$PWD/.venv/share/jupyter/kernels/python3/。jupyterを他の場所にインストールして実行し、このvenvをすべてのカーネルの整理にのみ使用する場合は、次のものが必要です。pip install ipykernel
    5. これで、jupyter labを実行できjupyter labます(コンソールに表示されたURLにブラウザーで移動します)。これまでのところ、 'Python 3'と呼ばれるカーネルオプションが1つだけ表示されます。(この名前はdisplay_namekernel.jsonファイルのエントリによって決まります。)
  3. python2カーネルを追加する

    1. jupyterを終了します(または同じディレクトリで別のシェルを開始します)。 ctrl-c
    2. python3 venvを非アクティブ化します。 deactivate
    3. python2の同じディレクトリに新しいvenvを作成します。 virtualenv -p python2 .venv2
    4. python2 venvをアクティブ化します。 . .venv2/bin/activate
    5. ipykernelモジュールをインストールしますpip install ipykernel。これにより、このpython2 venvのデフォルトのカーネル仕様も生成されます.venv2/share/jupyter/kernels/python2
    6. これらのカーネル仕様をpython3 venv:にエクスポートしますpython -m ipykernel install --prefix=$PWD/.venv。これは基本的にディレクトリ$PWD/.venv2/share/jupyter/kernels/python2をコピーするだけです$PWD/.venv/share/jupyter/kernels/
    7. python3 venvに切り替えて、jupyterサーバーを再実行/再確認しますdeactivate; . .venv/bin/activate; jupyter lab。すべてがうまくPython 2いけば、カーネルのリストにオプションが表示されます。単純なprint 'Hellow world'vs print('Hellow world')コマンドを処理することで、実際のpython2 / python3インタープリターが実行されていることをテストできます。
    8. 注:ipykernelをインストールしてグローバルスペースからpython2-kernel仕様を参照できれば、python2用に別のvenvを作成する必要はありませんが、私はすべての依存関係を1つのローカルディレクトリに置くことを好みます

TL; DR

  1. オプションでRカーネルをインストールします。これは、カーネルが「何であるか」を理解するのに役立ちます。
    1. 同じディレクトリから、R IRkernelパッケージをインストールしますR -e "install.packages('IRkernel',repos='https://cran.mtu.edu/')"。(これは標準のRパッケージの場所にインストールされます。Macで自作インストールされたRの場合、これはのようになります/usr/local/Cellar/r/3.5.2_2/lib/R/library/IRkernel。)
    2. IRkernelパッケージには、カーネル仕様をエクスポートする機能が含まれているため、次のコマンドを実行しますR -e "IRkernel::installspec(prefix=paste(getwd(),'/.venv',sep=''))"。ここで調べると、次のようなファイルを$PWD/.venv/share/jupyter/kernels/含むirディレクトリが見つかりkernel.jsonます。
{
  "argv": ["/usr/local/Cellar/r/3.5.2_2/lib/R/bin/R", "--slave", "-e", "IRkernel::main()", "--args", "{connection_file}"],
  "display_name": "R",
  "language": "R"
}

要約すると、カーネルはkernel.json、jupyterが.../share/jupyter/kernelsdirで探し、そのインターフェースでリストするファイルからの言語固有の実行可能ファイルの呼び出しです。この場合、Rは関数を実行するために呼び出さIRkernel::main()れ、Jupiterサーバーとの間でメッセージを送受信します。同様に、python2カーネルはちょうどモジュールとpython2インタプリタの呼び出しは「」ipykernel_launcherに見られるように.venv/share/jupyter/kernels/python2/kernel.jsonなど、

これらの指示をすべて一度に実行する場合のスクリプトは次のとおりです。


こんにちはMagnus、jupyterノートブックにデフォルトではないカーネル(例:.venv3)を使用させるにはどうすればよいですか?これを行うことができないことは、永遠に私の側のとげです。デフォルトで仮想環境カーネルを使いたい!!
初心者

0

これが私が見つけたWindows /非コマンドラインメソッドです。カーネルファイルが保存されているフォルダーを見つけます(私のマシンでは-C:\ ProgramData \ jupyter \ kernels-ProgramDataは隠しフォルダーであることに注意してください)。既存のカーネルのフォルダのコピー、名前を変更し、新しいカーネルのディレクトリを指すようにその中のjsonファイルを編集します。このjsonでは、ipythonに表示されるカーネル名を編集することもできます(たとえば、python 2だけでなく、何らかの理由でさらに区別する必要がある場合は2.7.9を指定できます)。


0

Python環境を管理するcondaを使用する場合は、次の2つの手順に従います。

  1. activate py3(Windowsまたはsource activate py3Linux)
  2. conda install notebook ipykernel または単に使用 conda install jupyter

0

python-2でも同じエラーが発生しました。私はpython-2 jupyter Notebookセッションを実行したかったのですが、デフォルトでpython-3を取得していました。最も簡単な回避策は、python-2用のAnacondaターミナルを開いて「jupyter notebook」と入力することです。問題なくjupyter-notebookセッションを起動します。同様にpython-3で試すことができます


-2

あなたがしなければならないすべては実行されているとかなり確信しています

pip3インストールjupyter

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.