Upgrade to Pro — share decks privately, control downloads, hide ads and more …

UVの使い方紹介

Avatar for 愛計 愛計
October 29, 2025

 UVの使い方紹介

研究室のゼミでの進捗スライドから抜粋しました。
2025/6/10時点での内容となっております。

Avatar for 愛計

愛計

October 29, 2025

More Decks by 愛計

Other Decks in Programming

Transcript

  1. uv Rust で書かれた、非常に高速な Python パッケージおよびプロジェクトマネージャー。 2024年2月15日に初めてリリース。発音は/juː viː/ Cargo for Python

    を目指しているらしい uv公式ドキュメント - https://docs.astral.sh/uv/ 参考になった記事 - https://zenn.dev/tabayashi/articles/52389e0d6c353a - https://qiita.com/kissy24/items/0c091bb5f12d697131ae - https://kumaroot.readthedocs.io/ja/latest/python/python-uv.html - https://speakerdeck.com/mickey_kubo/pythonpatukeziguan-li-uv-wan-quan-ru -men
  2. uvのインストール macOS/Linux - $ curl -LsSf https://astral.sh/uv/install.sh | sh Homebrew

    - $ brew install uv Windows - $ powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex" https://docs.astral.sh/uv/getting-started/installation/
  3. uvのバージョン確認 uvのインストールができたかの確認 $ uv --version - $ uv self version

    - $ uv -V - でも可能 バージョンが出力される 僕の場合:uv 0.7.10 (Homebrew 2025-06-03)
  4. uvでPythonのバージョンを指定して実行する $ uv run example.py - の代わりに $ uv run

    --python 3.12 example.py - とすれば良い 豆知識:uvはが対応しているのは、python3.8以降
  5. サードパーティライブラリに依存している場合の実行 例:example.py from rich import print print("[bold magenta]Hello from rich![/bold

    magenta] 🎉") 普通に実行すると(グローバルに入ってないなら)、ModuleNotFoundErrorが起きる 1. --withオプションをつける(少し面倒) 2. インラインメタデータを記載 - 手書き(面倒) - uv addをする - 最初にファイルを作る時点で、uv init –script example.py としておく
  6. --withオプションをつける $ uv run --with rich example.py Hello from rich!

    🎉 上記のような感じで実行できる(richな出力になっていると思います。) uvがライブラリを爆速でダウンロードするか、キャッシュから使ってくれる ライブラリ数が多かったら大変
  7. インラインメタデータの追記 例:exsample.py # /// script # requires-python = ">=3.8" #

    dependencies = [ # "rich", # ] # /// from rich import print print("[bold magenta]Hello from rich![/bold magenta] 🎉")
  8. まとめ:単体で動作するスクリプトを実行時のコマンド uv run --python <ver.> <script> - Pythonのバージョンを指定した場合、インラインメタデータよりオプションが優先され る。 uv

    add --script <script> <pkg> uv remove --script <script> <pkg> addする際、バージョン指定子を使って、バージョンを指定できる。 例:uv add --script example.py rich>=14.0.0"
  9. プロジェクトを作ろう 単体で動作するスクリプトは上記のように--scriptをつければ良い - 複数のファイルに依存したコードを書くときにはプロジェクトを作る必要がある $ uv init --app hello-world -

    これでhello-worldというフォルダが作られる。 - オプション--appはデフォルトなので、省略しても良い - プロジェクトではなく、単体で動作するスクリプト場合もuv initを使用した方がインラ インメタデータが記載されるので少し楽 - $ uv init --script example.py
  10. プロジェクトの構造 . ├── .git ├── .gitignore ├── .python-version (Pythonのバージョンを指定する) ├──

    README.md (オプションで生成しないようにできる) ├── main.py (Pythonファイル) └── pyproject.toml (ライブラリが書かれている。)