venv

cd /path/to/project        # project root に移動
python3 -m venv venv       # venv モジュールをスクリプトとして実行する
source venv/bin/activate   # 作成する仮想環境のディレクトリ名(任意の名前でOK)

[!NOTE] venv は通常 Git に含めません( pip freeze > requirements.txt で作成した requirements.txt を管理します)。
python3 -m venv venv の最後の venv は仮想空間のディレクトリで venv/bin/python3 や venv/bin/pip などの実行ファイルが作成されます。
また pip でインストールしたパッケージが venv/lib/python3.12/site-packages/ に配置されます。

[!NOTE] source(または . )とは: 「ファイルを新しいプロセスを生成せず、現在のシェル自身が直接実行する」

uv

ref. https://docs.astral.sh/uv/getting-started/installation/

uv は単体のバイナリ(Rust 製)で動作するため、Ubuntu 側の python3-pip や python3-venv に依存しません。

curl -LsSf https://astral.sh/uv/install.sh | sh

REPL

uv run python3

Python + Jupyter Lab / Notebook

uv を使って構築する方法を記載します。

# uv が未インストールの場合
curl -LsSf https://astral.sh | sh

使い捨て:

# 使い捨ての環境をインストール( ctrl + C で終了)
uv run --with jupyterlab --with numpy --with pandas --with matplotlib --with scikit-learn jupyter lab

プロジェクトとして:

# プロジェクトとしてインストール
uv init
uv add jupyterlab numpy pandas matplotlib scikit-learn
# .gitignore に `.venv` を追加
# .gitignore に .ipynb_checkpoints を追加

# 起動
uv run jupyter lab

パッケージ削除やプロジェクトごとの削除する場合は以下のとおりです。

やりたいこと 方法
ライブラリ1つ削除 uv remove <パッケージ名>
環境の作り直し rm -rf .venv && uv sync
不要になった jupyter フォルダごと削除