Anacondaは商用利用は有償になったので、Python 公式からダウンロードすることを推奨する。
Pythonをインストール
Ubuntu (WSL2)
$ sudo apt -y update $ sudo apt -y upgrade $ sudo apt -y install python3-pip
PATHを通す
$ pico ~/.bashrc
で ~/.bashrc
に以下を追加
alias python="python3" alias pip="pip3" export PATH="/home/physics/.local/bin:$PATH"
~/.bashrc
を読み込み
$ source ~/.bashrc
これでpipでpip3が呼べるし、pythonでpython3が呼べる。
Windows
x64版
- Python 3.8.10 筆者が使っているバージョン
- Python 3.7.9 1つ前のバージョン
- Python の全バージョン
以下、私のインストール設定
Customize installationへ
pip と tcl/tk and IDLE をインストール
すべてのチェックを外す
PythonのPATHを通す。インストール直後だとフォルダは作成されてないこともあるが、次の3つのPATHを環境変数に加える。
Python 3.8の場合
%LOCALAPPDATA%\Programs\Python\Python38 %LOCALAPPDATA%\Programs\Python\Python38\Scripts %APPDATA%\Python\Python38\Scripts
Python 3.7の場合
%LOCALAPPDATA%\Programs\Python\Python37 %LOCALAPPDATA%\Programs\Python\Python37\Scripts %APPDATA%\Python\Python37\Scripts
最新のWindows 10だと、PythonのMicrosoft StoreへのPathが既に設定されていることがあるので、以下のPathの優先順位を下げる。
%USERPROFILE%\AppData\Local\Microsoft\WindowsApps
各パッケージのインストール
数学系
pip install numpy scipy
sympy
pip install simpy
jupyter
pip install jupyter jupyterlab jupyterlab_launcher
画像処理
pip install opencv-python
グラフ描画ツール
pip install matplotlib
Jupyter Labなどでインタラクティブな描画をするためのパッケージ
pip install ipympl
岐阜大の乾板解析で必要なパッケージ
pip install affine6p uncertainties
ディープラーニング関連
pip install tensorflow tensorflow-gpu keras
yamlを読み取る
pip install pyyaml
Awkward Arrayを使う
version 1系 の最終版
pip install awkward==1.10.5
version 2系。1系と互換性はない
pip install awkward
PyTorchをインストール
$ pip install torch torchvision torchaudio
最新のNVIDIAドライバ をインストールすると、WSLでもCUDAが使える。
>>> import torch >>> torch.cuda.is_available() True
日本語フォント
そのままだとmatplotlibで日本語フォントが使えず、いわゆる豆腐現象が起きてしまうため、下記の手順で導入する。
Ubuntu
sudo apt install fonts-noto-cjk
でゴシック体をインストールする。~/.config/matplotlib/matplotlibrc
にfont.family : Noto Sans CJK JP
とだけ書いて保存。~/.cache/matplotlib
をrm -r
で削除する。- jupyterを立ち上げ直す。
Windows
- https://moji.or.jp/ipafont/ipaex00401/ (文字情報技術促進協議会) または https://forest.watch.impress.co.jp/library/software/ipaexfont/ (窓の杜)からIPAexフォント(IPAexフォント 明朝とゴシック)をダウンロードする。
- それぞれ
ipaexg.ttf
ipaexm.ttf
をダブルクリックしてインストールする。 %userprofile%\.matplotlib
というフォルダ(なければ%userprofile%
に行って作成)でmatplotlibrc
というファイルを作成する。font.family : IPAexGothic
とだけ書いて保存。.matplotlib
内のtex.cache
フォルダとfontlist-*.json
を削除する。- jupyterを立ち上げ直す。
Jupyter
Python用に開発された、ウェブブラウザでPythonを実行、グラフ表示等ができる、統合開発環境である。筆者はjupyter lab
を使っている。
Jupyter 関連の投稿一覧
Jupyter カテゴリーの記事一覧 - 物理の駅 Physics station by 現役研究者
extension
nodejsを入れよと言われることがあるのでインストールする
起動時のエラーの例
[W 2022-08-17 13:27:14.706 LabApp] Could not determine jupyterlab build status without nodejs
nodejs(node.exe)を入れたあと
[I 2022-08-17 13:36:21.912 LabApp] Build is up to date
jupyter上でメモリ使用率などを表示させるには、extensionからjupyter-resource-usage
をインストール
Windowsでipynbをjupyter labで開く 方法
%LOCALAPPDATA%\Programs\Python\Python38\Scripts または %LOCALAPPDATA%\Programs\Python\Python37\Scripts
以下に、jupyter-lab.exe
があるので、このファイルを開く方法を選ぶの一番下、これを開くから選ぶ。
Jupyterのバージョン確認
>jupyter --version Selected Jupyter core packages... IPython : 8.4.0 ipykernel : 6.15.1 ipywidgets : 7.7.1 jupyter_client : 7.3.4 jupyter_core : 4.11.1 jupyter_server : 1.18.1 jupyterlab : 3.4.5 nbclient : 0.6.6 nbconvert : 6.5.3 nbformat : 5.4.0 notebook : 6.4.12 qtconsole : 5.3.1 traitlets : 5.3.0
jupyter labの拡張機能(extension)のリスト(バージョン)を表示する
>jupyter labextension list JupyterLab v3.4.5 c:\users\masahiro\appdata\local\programs\python\python38\share\jupyter\labextensions jupyterlab_pygments v0.2.2 enabled ok (python, jupyterlab_pygments) @jupyter-widgets/jupyterlab-manager v3.1.1 enabled ok (python, jupyterlab_widgets) Other labextensions (built into JupyterLab) app dir: C:\Users\Masahiro\AppData\Local\Programs\Python\Python38\share\jupyter\lab @jupyter-server/resource-usage v0.6.3 enabled ok
jupyter labの拡張機能(extension)をアップデートする
jupyter labextension update --all
PIP関連
PIPは、Python用のパッケージのインストールプログラムである。通常、パッケージはpipを使ってインストールする。
Ubuntu(WSL2)へインストール
aptで入れる
sudo apt install python3-pip
パッケージを入れる方法は3つあって、同じライブラリがある場合の優先順位は以下の通り。
- pip install
- sudo pip install
- sudo apt install
3→2 の順で入れると入らない。
2→3 の順で入れると入るが2が優先される。
3→1、2→1 の順で入れると入って、1が優先される。
インストール先のパス /usr/lib/python3/dist-packages /usr/local/lib/python3.6/dist-packages /home/hoge/.local/lib/python3.6/site-packages/
Windowsへインストール
Anacondaを使えない環境ではパッケージ管理ソフトであるPIPは必須である。Pythonをインストールするときにインストールされるので、通常この操作を行う必要はない。インストール解説は This page has moved - pip documentation v24.0 にある。
まずは、get-pip.pyをダウンロードして、
bitsadmin.exe /TRANSFER download https://bootstrap.pypa.io/get-pip.py %cd%\get-pip.py
Pythonで実行する
python get-pip.py
その後、
where pip
でPATHが見えれば完了
PIPコマンド
インストール済みのパッケージ一覧
pip list
アンインストール
pip uninstall アンインストールしたいパッケージ
アップデートの確認 アップデート可能なパッケージ一覧を表示
pip list -o または pip list --outdated
例
Package Version Latest Type ---------- ------- ------ ----- matplotlib 3.3.3 3.5.3 wheel mistune 0.8.4 2.0.4 wheel pip 21.1.1 22.2.2 wheel pyarrow 8.0.0 9.0.0 wheel setuptools 56.0.0 65.0.2 wheel uproot 4.1.8 4.3.4 wheel
記録したバージョン一覧 requirements.txt から復元・インストール
pip install -r requirements.txt または pip install --requirement requirements.txt
バージョン一覧 requirements.txt の作成・書き出し方法
pip freeze > requirements.txt
パッケージ (例:matplotlib) のバージョンを最新版にする(アップグレード/アップデート)
pip install -U matplotlib または pip install --upgrade matplotlib
PIP自体のアップグレードもできる。
pip install -U pip または pip install --upgrade pip
特定のバージョンをインストールする
pip install ipywidgets==7.7.0
仮想環境を作る
Pythonが単一の バージョンの場合は比較的容易に仮想環境を作れる。
仮想環境: Python環境構築ガイド - python.jp
python -m venv .venv .venv\Scripts\activate.bat REM 終了 deactivate
Ubuntu(WSL2)では別途パッケージが必要
apt install python3.10-venv
過去に発生したエラー(備忘録)
pip でパッケージをインストールするとき、--user
をつけると ユーザーフォルダに保存されるが、一部のプログラムでは --user
にないことを前提としてコードが書かれてるので、特にこだわりがなければ --user
なしで良いだろう。
例えば、jupyter をインストールするときに--user
オプションをつけると、Printしようとするとできなかったり、 Export Notebook As
で項目が出てこないことがある。--user
は必要ない。 検索用のエラーメッセージは以下の通り。
"Jupyter Notebook requires JavaScript. Please enable it to proceed."
value = obj._trait_values[self.name] KeyError: 'template_paths'
Windowsにおける--user
の意味を調べてみる。--user
をつけないでインストールすると、
%LOCALAPPDATA%\Programs\Python\Python38\Lib\site-packages
へパッケージは保存される。一方、--user
をつけると
%APPDATA%\Python\Python38\Lib\site-packages
へ保存される。Roaming
の方はドメインに参加しているときに、ユーザーのローカルデータを同期される。Localの方のデータは同期されない。スタンドアローンのPC(皆さんのラップトップPC)で実行している時は気にしなくても良いし、付けても付けなくても現実問題変わらない。VSCodeでPythonのパッケージをインストールするとお節介にも--user
を付けてくれる。
上記の事情から、Pythonをアンインストールする時は、プログラムのアンインストールをした後、下記の両方を削除するように。
%LOCALAPPDATA%\Programs\Python\Python38 %APPDATA%\Python\Python38
数学系のPythonパッケージ numpyで、1.19.4にバグがあったので、1.19.3を入れるべしと書いていたが(2020/10/02)、最新版は問題なさそうにみえる (2022/08/24)
Python環境を移植や同期する方法
Pythonの環境を別のPCと同期したり移植したりしたいことがあるだろう。Dockerは知らん。
pythonのバージョン確認
python -v
パッケージを移植する
移植元
pip install -r requirements.txt
移植先
pip install -r requirements.txt