Poetryで特定のバージョンのライブラリを追加する方法
Pythonプロジェクトでは、依存関係の管理と維持がさまざまな理由で重要になります。アプリケーションの機能、異なる環境との互換性、プロジェクトの再現性などです。PythonパッケージマネージャであるPoetryは、依存関係の追加、更新、削除を簡単に行うためのツールです。この記事では、Poetryで特定のバージョンのライブラリを追加する方法を紹介します。
ライブラリを追加する手順
Poetryで管理されているPythonプロジェクトに特定のライブラリを使用するには、そのライブラリをプロジェクトに追加する必要があります。Poetryには、この目的のために専用のadd
コマンドがあります。このコマンドは次の形式で使用されます。
bash
$ poetry add <library-name>@<version>
例えば、requests
ライブラリのバージョン2.24.0
をプロジェクトに追加したい場合は、次のコマンドを使用します。
bash
$ poetry add requests@2.24.0
バージョンの指定方法
プロジェクトにライブラリを追加する際、バージョン番号を指定することで細かな制御が可能になります。Poetryはこの点で柔軟性を提供しています:
@^2.24.0
: この指定は、セマンティックバージョニングに基づき、2.24.0
と互換性のある任意のバージョンを取得。通常、これは左側のゼロ以外の最初の数字を変更しないバージョンを意味します。@~2.24.0
:2.24.0
に「近い」バージョンをインストール。通常、次のマイナーリリースを含まずにバージョンを取得します。@2.24.*
: 2.24で始まる任意のバージョンを取得@>2.24.0
: 2.24.0より大きいバージョンを取得@<2.24.0
: 2.24.0未満のバージョンを取得@>=2.24.0
: 2.24.0以上のバージョンを取得@<=2.24.0
:2.24.0
次のバージョンを取得
バージョンを指定しない場合、Poetryは最新バージョンのライブラリをプロジェクトに追加します。
AlloyDB
Amazon Cognito
Amazon EC2
Amazon ECS
Amazon QuickSight
Amazon RDS
Amazon Redshift
Amazon S3
API
Autonomous Vehicle
AWS
AWS API Gateway
AWS Chalice
AWS Control Tower
AWS IAM
AWS Lambda
AWS VPC
BERT
BigQuery
Causal Inference
ChatGPT
Chrome Extension
CircleCI
Classification
Cloud Functions
Cloud IAM
Cloud Run
Cloud Storage
Clustering
CSS
Data Engineering
Data Modeling
Database
dbt
Decision Tree
Deep Learning
Descriptive Statistics
Differential Equation
Dimensionality Reduction
Discrete Choice Model
Docker
Economics
FastAPI
Firebase
GIS
git
GitHub
GitHub Actions
Google
Google Cloud
Google Search Console
Hugging Face
Hypothesis Testing
Inferential Statistics
Interval Estimation
JavaScript
Jinja
Kedro
Kubernetes
LightGBM
Linux
LLM
Mac
Machine Learning
Macroeconomics
Marketing
Mathematical Model
Meltano
MLflow
MLOps
MySQL
NextJS
NLP
Nodejs
NoSQL
ONNX
OpenAI
Optimization Problem
Optuna
Pandas
Pinecone
PostGIS
PostgreSQL
Probability Distribution
Product
Project
Psychology
Python
PyTorch
QGIS
R
ReactJS
Regression
Rideshare
SEO
Singer
sklearn
Slack
Snowflake
Software Development
SQL
Statistical Model
Statistics
Streamlit
Tabular
Tailwind CSS
TensorFlow
Terraform
Transportation
TypeScript
Urban Planning
Vector Database
Vertex AI
VSCode
XGBoost