Poetryで快適Python開発ライフ!依存関係と仮想環境の管理が超ラク!
Pythonでアプリ開発していると、依存パッケージと仮想環境の管理って面倒ですよね。
Poetryを使えば、そんな悩みともサヨナラできちゃいます!
Poetryとは
Poetryは、Pythonのパッケージ管理と仮想環境構築を統合的に行えるツールなんです。つまり、依存関係管理、仮想環境構築、ビルド、パッケージングを統合的におこなうことができるツールで、プロジェクトで使うパッケージをpyproject.tomlってファイルで管理して、コマンド一発で仮想環境の構築からパッケージのインストールまでできちゃう優れものなのです!
pyproject.tomlが全ての基本!
pyproject.tomlは、Poetryの設定ファイルで、プロジェクトの情報を一箇所に集約できるんです。こんな感じで書くよ。
[tool.poetry]
name = "my-awesome-project"
version = "0.1.0"
description = "超かっこいいプロジェクト"
authors = ["あなたの名前 <you@example.com>"]
[tool.poetry.dependencies]
python = "^3.9"
requests = "^2.28.1"
[tool.poetry.dev-dependencies]
pytest = "^7.1.2"
[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"
- プロジェクトの基本情報
- 本番用の依存パッケージ
- 開発用の依存パッケージ
- ビルド設定
これだけ書けば、プロジェクトの青写真は完成!
Poetryのインストール方法
まずはpipでPoetryをインストールしましょう。
pip install poetry
新しいプロジェクトの始め方
新しいプロジェクトを始めるには、poetry new
コマンドを叩くだけ!
poetry new my-awesome-project
既存のプロジェクトにPoetryを導入する場合
既存のプロジェクトにPoetryを導入する場合は、プロジェクトのルートディレクトリでpoetry init
を実行。
poetry init
質問に答えていくと、pyproject.tomlが自動生成されます。
Poetry環境に新しいパッケージを追加
Poetry環境に新しいパッケージを追加したいときは、poetry add
コマンドを使います。
poetry add requests
開発用のパッケージを追加したい場合は、--dev
オプションを付ければOKです。
poetry add --dev pytest
仮想環境の構築とパッケージのインストール
仮想環境の構築とパッケージのインストールするには、poetry install
コマンドを実行します。これで仮想環境の構築とパッケージのインストールが一気に完了できます。
poetry install
仮想環境でコマンドを実行する
仮想環境でコマンドを実行するときは、poetry run
コマンドを使えば、仮想環境内でコマンドを実行できます。
poetry run python script.py
仮想環境のシェルに入るとき
仮想環境のシェルに入るときは、poetry shell
コマンドを実行すれば、仮想環境のシェルに入れます。
poetry shell
Poetryを使うメリット
- pyproject.tomlで依存関係を一元管理できる
- 仮想環境の構築とパッケージのインストールが自動化される
-
poetry build
でパッケージのビルドが簡単 -
poetry publish
でPyPIへの公開もラクラク - 依存関係の競合も自動で解決してくれる
まとめ
Poetryを使えば、Pythonプロジェクトの依存関係と仮想環境の管理が超ラクになります!
この記事を参考に、ぜひPoetryを導入してみてくださいね!
関連記事