Pythonのモジュールをインストールする方法¶
動画で手順を確認する¶
手順を動画で解説しています。
Unit Aに作業したいプロジェクトメンバアカウントもしくは個人アカウントで接続します。詳細はUnit A の接続方法をご覧ください。
以下のコマンドを実行します。
export https_proxy=http://epx3x01:8080
export http_proxy=http://epx3x01:8080
- Pythonを使えるようにします。
py310-recommended/20220404
などあらかじめインストールされているモジュールと組み合わせて使うと、一部のモジュールで問題が発生することを確認しています。4. 以降の手順を実施する前にpy36-recommended
,py37-recommended
,py38-recommended
,py39-recommended
,py310-recommended
,py311-recommended
はアンロードしておくことをお勧め致します。その後、module load python3.10
を実行してください。何もモジュールが入っていない状態から始めた場合には
module load python3.10
を実行してください。インストールされているPythonのバージョンはmodule avail 'python*'
で確認できます。
ここからは二つの方法があります。venvを使う方法と、各ユーザーのホームディレクトリにインストールする方法です。多くの場合、venvを使ってインストールすることをお勧めします。この場合には、利用する前に追加でワンステップ必要になります。もう一つの方法は各ユーザーのホームディレクトリにインストールする方法ですが、トラブルになりやすいポイントがいくつかあるためお勧めいたしません。
venvを利用する方法¶
以下のようなコマンドを実行し、Pythonの仮想環境を作ります。ここで作ったパスは後から動かすことが難しいので、最終的に利用する場所で実施します。この仮想環境とは各種モジュールがインストールされている環境を一つのディレクトリにまとめたものを指していて、別の場所で別の環境を作ることで目的ごとに同じモジュールの別バージョンを利用したり、同時にはインストールできないモジュールを利用したりすることができます。
python3 -m venv env
最後の引数のenvは仮想環境の名前であり、仮想環境を作るパスとなっています。多くの場合、envやvenvという名前が使われますが、任意の名前を利用可能です。
注釈
Python 2を利用している場合にはvenvがありません。ToMMoスパコンでは代わりに同等の機能を持つvirtualenvが利用可能ですので、venvをvirtualenvに読み替えてご利用ください。
仮想環境を有効化するために以下のコマンドを実行します。もし、カレントディレクトリ以外にenvディレクトリを作った場合や別の名前を利用した場合には適切なパスに書き換えてください。
source env/bin/activate
このようにするとシェルのプロンプトの最初に
(env)
のように仮想環境の名前が表示されます。以下のコマンドを実行し、モジュールをインストールします。以下の例では pandas をインストールしていますが、pandas の部分は利用したいモジュールの名前に置き換えてください。
pip3 install pandas
これでインストールは完了です。インストールしたモジュールをUnit B/Cでも利用したい場合には、
datatransfer
コマンドを使ってenv
ディレクトリを Unit B/C に持ち込み、Unit Aと同じパスに配置してください。詳細はUnit Aを経由して持ち込む方法をご覧ください。利用する時には 3. で説明したように
module load python3.10
などインストール時に利用したものと同じ方法でPython3を使える状態にし、その後source env/bin/activate
を実行することで、仮想環境にインストールしたモジュールが使えるようになります。仮想環境を無効化するには、以下のコマンドを実行します。
deactivate
各ユーザーのホームディレクトリにインストールする方法¶
警告
一見簡単に見えますが、特にUnit B/Cに持ち込むときにトラブルになりやすいポイントがあり、プロジェクトメンバアカウント間で共有もできないのでお勧めしません。この方法はよくわかっている人のみお使いください。
4. までを済ませた状態で、以下のようなコマンドを実行しモジュールのインストールを行います。以下の例では pandas をインストールしていますが、pandas の部分は利用したいモジュールの名前に置き換えてください。以下を実行すると
~/.local
以下にインストールされます。
pip3 install --user pandas
Unit B/Cで作業を行う場合にはUnit Aを経由して持ち込む方法に従って、
~/.local
を持ち込み、同じパスに配置します。インストールしたモジュールを利用する場合には 3 の手順と同じ方法でPythonを使えるようにしたのちにPythonを立ち上げると利用できるようになります。
module load py310-recommended/20220404
を実行してインストールしたにも関わらず、module load python3.10
しか実行していない状態で利用しようとすると正常に動きませんので、必ずインストール時と同じ方法でPythonを使えるように設定してください。モジュールによっては
~/.local/bin
にパスを通す必要があります。また、~/.local
にはPython以外のソフトウェアのファイルも配置されているため、Unit B/Cに持ち込む時に予期せぬ結果をもたらす場合があります。