Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Pythonパッケージ管理 [uv] 完全入門
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
MIKIO KUBO
May 18, 2025
Education
31
56k
Pythonパッケージ管理 [uv] 完全入門
uvは超高速なPythonパッケージマネージャ 仮想環境作成・パッケージ管理・Pythonバージョン管理を一元化 Rust製で10〜100倍の速度向上
MIKIO KUBO
May 18, 2025
Tweet
Share
More Decks by MIKIO KUBO
See All by MIKIO KUBO
最適化の芸術:生産と物流を統合する
mickey_kubo
0
29
次世代最適化プラットフォーム MOAI Patform
mickey_kubo
2
33
SCML (Supply Chain Modeling Language)
mickey_kubo
0
41
Google Antigravity エージェント・フ ァーストな開発パラダイムへの招待
mickey_kubo
1
110
Google AI Studio 開発者向け完全ガイド プロトタイピ まで ングからReactアプリ 構築・マルチモーダル活用
mickey_kubo
1
93
The Fusion of Mathematical Optimization and AI (MOAI): History and Outlook (Final Version)
mickey_kubo
0
78
The Fusion of Mathematical Optimization and AI (MOAI): History and Outlook (Short Version)
mickey_kubo
1
64
The Fusion of Mathematical Optimization and AI (MOAI): History and Outlook
mickey_kubo
1
97
History and Future of MO+AI
mickey_kubo
1
89
Other Decks in Education
See All in Education
Information Architectures - Lecture 2 - Next Generation User Interfaces (4018166FNR)
signer
PRO
1
1.9k
良い塩梅を実現する、AWSネットワーク3分クッキング
masakiokuda
1
150
Design Guidelines and Principles - Lecture 7 - Information Visualisation (4019538FNR)
signer
PRO
0
2.9k
演習:Gitの応用操作 / 05-git-advanced
kaityo256
PRO
0
230
Gitの仕組みと用語 / 01-b-term
kaityo256
PRO
0
220
演習:Gitの基本操作 / 04-git-basic
kaityo256
PRO
0
370
2025年の本当に大事なAI動向まとめ
frievea
1
200
アジャイルなマインドセットを「取り戻す」新人研修づくり
chinmo
1
260
AIでキミの未来はどう変わる?
behomazn
0
120
Postcards
gabrielramirezv
0
160
Going over the Edge
jonoalderson
0
800
Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)
signer
PRO
0
3k
Featured
See All Featured
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.5k
WCS-LA-2024
lcolladotor
0
500
RailsConf 2023
tenderlove
30
1.4k
How to Ace a Technical Interview
jacobian
281
24k
Optimizing for Happiness
mojombo
378
71k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.3k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
170
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
300
Skip the Path - Find Your Career Trail
mkilby
1
89
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
199
73k
Claude Code のすすめ
schroneko
67
220k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
150
Transcript
Python パッケージ管理『uv 』完全入門 uvは超高速なPythonパッケージマネージャ 仮想環境作成・パッケージ管理・Pythonバージョン管理を一元化 Rust製で10~100倍の速度向上 1
uv とは? Python開発環境のオールインワンツール 仮想環境・依存関係・Python本体のバージョン管理も可能 pip, venv, poetryなどの機能をまとめてカバー 特徴 圧倒的な高速性 再現性の高い環境構築
シンプルな操作性 2
uv のインストール macOS/Linux: curl -LsSf https://astral.sh/uv/install.sh | sh Windows: powershell
-ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex" Homebrew: brew install uv インストール確認: uv version 3
プロジェクト初期化 uv init myproject cd myproject myproject ディレクトリが作成され、 pyproject.toml などの初期ファイルも自
動生成 4
仮想環境の作成 uv venv カレントディレクトリに .venv フォルダが作成される 特定のPythonバージョンで仮想環境を作成: uv venv --python
3.11 必要なPythonバージョンは自動でダウンロードされる 5
仮想環境の有効化(アクティベート) Linux/macOS: source .venv/bin/activate Windows (PowerShell): .\.venv\Scripts\Activate.ps1 有効化すると、プロンプトの先頭に (.venv) が表示され、仮想環境内のPythonが
使われる 6
仮想環境を意識せずコマンド実行 仮想環境を有効化せずとも、 uv run で自動的に仮想環境内でコマンドやスクリ プトを実行できる 7
uv run の使い方(基本) スクリプトやコマンドを仮想環境で実行 uv run python script.py uv run
hello.py uv run pytest tests/ uv run ruff check プロジェクトの仮想環境が自動的に作成・更新され、依存関係も最新化される .venv を直接有効化しなくても、常にプロジェクト環境で安全に実行できる .py ファイルやHTTP(S) URLを指定すると自動的にPythonで実行される 8
uv run の応用 プロジェクト環境でCLI ツールやシェルスクリプトも実行可能 uv run bash scripts/foo.sh uv
run example-cli foo 一時的に追加の依存パッケージを指定して実行 uv run --with httpx==0.26.0 python -c "import httpx; print(httpx.__version__)" --with で指定したパッケージはその実行時のみ一時的に追加される プロジェクトの依存関係に影響を与えず、バージョン指定も可能 9
uv run の便利な特徴 スクリプト内にPEP 723形式で依存関係を記述できる(インラインメタデータ) 依存関係が記載されたスクリプトを uv run で実行すると、自動で必要なパッケ ージを一時環境にインストールしてから実行
HTTP(S) URLで指定したスクリプトも一時的にダウンロードして実行できる 10
パッケージの追加・削除 パッケージ追加: uv add numpy pandas パッケージ削除: uv remove numpy
依存関係は pyproject.toml と uv.lock に自動反映 11
パッケージのインストール・同期・ロック 依存関係の同期(インストール): uv sync 依存関係のロックファイル更新: uv lock 依存関係のツリー表示: uv tree
12
Python バージョン管理 Python本体のインストール: uv python install 3.10 3.11 インストール済みバージョンの確認: uv
python list プロジェクトで使うバージョンの固定: uv python pin 3.11 13
CLI ツールのインストール・実行 CLIツールのインストール(例: ruff): uv tool install ruff インストール済みツールの一覧: uv
tool list 14
uvx コマンドの使い方 uvxはCLIツールやパッケージを一時的な環境で素早く実行できるコマンド 例: cowsay を一時的に実行 uvx cowsay Hello, uv!
cowsayパッケージがなければ自動でダウンロードし、仮想環境を汚さず実行 15
uvx でテストツールを実行 例: pytest を一時的に実行 uvx pytest プロジェクトにpytestがなくても即座にダウンロードして実行 テストやLinter、CLIツールの「お試し」に便利 16
uvx の主なオプション オプション 説明 --from 指定パッケージのコマンドを使用 --with 追加パッケージも同時にインストールして実行 --isolated 完全に新しい一時環境で実行(既存ツール無視)
例: uvx --with pytest pytest test_sample.py 17
pip 互換コマンド コマンド 説明 uv pip install パッケージのインストール uv pip
uninstall パッケージのアンインストール uv pip list インストール済みパッケージ一覧 uv pip freeze バージョン固定用リスト出力 uv pip check 依存関係の整合性チェック 18
依存関係のエクスポート・移行 requirements.txt形式でエクスポート: uv export --format=requirements.txt 既存pip/venv環境からuvに移行する場合も簡単 19
まとめ uvは仮想環境・パッケージ・Pythonバージョン・CLIツール管理を一元化 uv runで仮想環境を意識せず安全・高速にスクリプトやコマンドを実行 uvxで一時的なCLIツール実行も可能 圧倒的なスピードとシンプルな操作性で初心者にもおすすめ 20
参考リンク 公式: https://docs.astral.sh/uv/ コマンド一覧: Zenn記事「uvだけでPythonプロジェクトを管理する」 実践例: Qiita「【Python】uvで始めるPythonプロジェクト」 使い方早見表: zanote.net「【Python】uvの使い方を忘れたときに見るための早 見表」
21
ご清聴ありがとうございました! ぜひuvとuvxを使ってみましょう! 質問があればどうぞ! 22