LoginSignup
18
18

More than 3 years have passed since last update.

Jupyter の kernel に pyenv 環境を追加する

Last updated at Posted at 2020-01-25

はじめに

Anaconda の環境登録などはせず,pyenv の環境を Jupyter の kernel として登録する時のメモです.
用途としては,python3系の中でバージョンを細かく分けたいときなどです.
Anaconda の仮想環境登録をする場合はこちらを参照.

コマンド一発で

python -m ipykernel install --user --name={name} --display-name={display-name}
  • name,display-name は既存のものと被らないように適宜設定.

手順

手元で python 3.7.4 の環境を登録した時の手順です.他のバージョンを登録する場合は適宜変更して下さい.
pyenv のインストール方法はこちらの記事が丁寧に書いてくれています.
pyenv を用いた Python3 インストール

まず,追加したい version の pyenv に切り替える.

$ pyenv global 3.7.4

pyenv が切り替わっていることを確認する.

$ pyenv versions
  system
  3.6.5
* 3.7.4 (set by /home/user/.pyenv/version)

jupyter で現在登録されている kernel を確認する.

$ jupyter kernelspec list
Available kernels:
  python3    /home/user/.local/share/jupyter/kernels/python3
  python2    /usr/local/share/jupyter/kernels/python

以下のコマンドで現在の pyenv 環境を jupyter に登録する.

$ python -m ipykernel install --user --name=python3.7.4 --display-name=python3.7.4
Installed kernelspec python3.7.4 in /home/user/.local/share/jupyter/kernels/python3.7.4
  • name, display-name を適宜設定する.
  • name は kernel の情報が入るディレクトリの名前,display-name は jupyter でカーネルを選択するときの表示名になる.
  • name では version の指定は行っておらず,現在の環境を登録するだけという点に注意!
$ jupyter kernelspec list
Available kernels:
  python3.7.4    /home/user/.local/share/jupyter/kernels/python3.7.4
  python3        /home/user/.pyenv/versions/3.7.4/share/jupyter/kernels/python3
  python2        /usr/local/share/jupyter/kernels/python2

無事に現在の環境が jupyter のカーネルに登録できました.
左側に出てくる kernel の名前は先ほどつけた name になっています.(display-name はあくまで Jupyter上での名前)

kernel の削除

間違えて登録した時は,以下のようにアンインストール出来ます.

$ jupyter kernelspec uninstall python3.7.4

うまく行かない時は

先ほど登録した kernel のディレクトリの kernel.json というファイルを確認する.

$ cat /home/user/.local/share/jupyter/kernels/python3.7.4/kernel.json 
{
 "argv": [
  "/home/user/.pyenv/versions/3.7.4/bin/python3",
  "-m",
  "ipykernel_launcher",
  "-f",
  "{connection_file}"
 ],
 "display_name": "Python3.7.4",
 "language": "python"
}

"/home/user/.pyenv/versions/3.7.4/bin/python3" が正しく指定出来ているかどうか確認してみる.
ここでのバージョンの指定が間違っていると,namedisplay_name があっていても所望のバージョンにならない.

参考

18
18
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
18
18