【Python】パッケージ管理ツール poetry の紹介

 poetry は Python のパッケージ管理ツールです。pip コマンドでとりあえずパッケージをダウンロードしたけれども何が入っているか覚えきれない。あるパッケージをダウンロードして使おうとしたら依存する他のパッケージも必要と Python に怒られた。などといった事態を防げます。
Poetry – Python dependency management and packaging made easy.
python-poetry/poetry: Python dependency management and packaging made easy.
 インストール方法は pip 経由で行えます。

pip install poetry

 poetry の作るパッケージ管理ファイルはユーザが定義する pyproject.toml と依存関係や現在の厳密なバージョンなどを管理する poetry.lock に分かれます。npm, yarn, compose などの他言語パッケージ管理ツールと同じようなものです。次は pyproject.toml の例です

[tool.poetry]
name = "tool_box"
version = "0.1.0"
description = ""
authors = ["cpt-sugiura"]

[tool.poetry.dependencies]
python = "^3.8"
selenium = "^3.141.0"
slackweb = "^1.0.5"
requests = "^2.24.0"
schedule = "^0.6.0"

[tool.poetry.dev-dependencies]

[build-system]
requires = ["poetry>=0.12"]
build-backend = "poetry.masonry.api"

 コマンドは JavaScript のパッケージ管理ツール yarn に少し似ています。よく使うコマンドは次です。

poetry init # プロジェクトの初期化
poetry install 
# poretry.lock がないならば pyproject.toml にある各パッケージの最新版をインストール.
# poretry.lock があるならば poretry.lock にある各パッケージの固定バージョンをインストール.
poetry add [パッケージ名] # パッケージとそれに依存するパッケージの追加
poetry remove [パッケージ名] # パッケージとそれに依存するパッケージを削除
poetry update # pyproject.toml にある各パッケージの最新版をインストール.

 poetry は JavaScript のパッケージ管理ツールに慣れた人からするとコマンドを覚える必要も少なく、何か欲しいと思った機能は大体揃っています。最近自分がよく扱う JavaScript 界隈のライブラリ事情が極端なのもありますがパッケージの増減処理も高速で快適です。

>株式会社シーポイントラボ

株式会社シーポイントラボ

TEL:053-543-9889
営業時間:9:00~18:00(月〜金)
住所:〒432-8003
   静岡県浜松市中央区和地山3-1-7
   浜松イノベーションキューブ 315
※ご来社の際はインターホンで「316」をお呼びください

CTR IMG