- はじめに
- 1. poetry をインストールする
- 2. poetry の初期設定をしておく
- 3. poetry でプロジェクトを作る
- 4. poetry に library を追加
- 5. poetry 環境を構築
- 6. poetry 環境での実行
はじめに
python のパッケージ管理ツールは色々とあるが、その中でも poetry を使って python の project を作る方法を記載します
1. poetry をインストールする
mac の場合は以下
$ curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python -
$ poetry --versionhttps://python-poetry.org/docs/
2. poetry の初期設定をしておく
以下のコマンドを打つ事で、virtualenv が各 project の直下に置かれるようになります
virtualenv を project の直下に置く利点は主に以下になります
- 複数の project があっても、フォルダを移動する事で環境を切り替えられる
- VSCode (等の IDE) がインストールした library を認識してくれるようになる
$ poetry config virtualenvs.in-project true --local--local option をつける事で、 virtualenvs.in-project 設定自体を git 管理する事ができるようになります
設定は以下のコマンドで確認が可能です
$ poetry config --list
cache-dir = "/Users/name/Library/Caches/pypoetry"
experimental.new-installer = true
installer.parallel = true
virtualenvs.create = true
virtualenvs.in-project = true
virtualenvs.path = "{cache-dir}/virtualenvs"3. poetry でプロジェクトを作る
以下のコマンドで、project を作ります
// folder ごと作りたい場合
$ poetry new <project-name>
// すでにある folder を poetry 管理したい場合
$ poetry initpoetry new すると、以下のようなフォルダ構造が作られます
$ poetry new test-project
$ cd test-project/
$ tree
.
├── README.rst
├── pyproject.toml
├── test_project
│ └── __init__.py
└── tests
├── __init__.py
└── test_test_project.pypoetry init の場合は対話式のインターフェースが起動し、必要な情報を入れ終わると pyproject.toml のみが作られます
4. poetry に library を追加
poetry add コマンドを使って必要な library を追加できます
例えば pandas を追加したい場合は以下のような形になります
$ poetry add pandas5. poetry 環境を構築
以下のコマンドで実際に環境を構築します
$ poetry installroot 直下にpoetry.lock が作られるはずなので確認してください
手順 2 で virtualenvs.in-project true が設定できている場合は project root に .venv フォルダが作られているはずです
.venv フォルダが作られていない場合は既に virtualenv が作られている場合があるので、一度削除して再度環境を作り直してください
$ poetry env list
$ poetry env remove <env-name>6. poetry 環境での実行
poetry 環境では、 python コマンドを直接打たずに以下のようにします
$ poetry run <コマンド>例えば jupyter notebook を立ち上げたい場合は以下のようになります
$ poetry run jupyter notebook