Bag of ML Words

ML = Machine Learning, Music Love, and Miscellaneous things in daily Livings

pipevnももう古くてpoetryらしいよ・・・

pipenvですごい!新世代!快適!!

と思ってたらもうpoetryの時代らしい。

cocoatomo.github.io

【Python】Poetry始めてみた & Pipenv から poetry へ移行した所感 - Qiita

 

早速導入してみたんですが、確かにほぼほぼpipenvと同等のことはできて、あと初期プロジェクト設定とかが(testとかも込みで)作れてよいっぽい。

インストール、アンインストールもシステム全体に依存しないで $HOME/.poetryに保存されるだけっぽいし。実によろしそう。

ということで乗り換えたので、以下使い方コマンドのメモ書き

 

導入

$ curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python
$ source .zshrc

 

仮想環境をつくる

まず、pyenvで元となるpythonを決めて、pyenv localでそのディレクトリ専用の設定にする。

そののち、空のディレクトリにpoetry環境つくるときは new, 既存ディレクトリに設定するときは init.

$ poetry new new-package  # カレントディレクトリの下にnew-packageディレクトリができる

 

$ poetry init # カレントディレクトリに仮想環境が追加される

newすると、pyproject.tomlという依存関係をまとめるhuman readable fileとReadMe, パッケージディレクトリ(my-package)、テストディレクトリが作成される。

initの場合は対話的にpyprojectl.tomlを作れるみたい。

 

そのあと、installでpyprojectltomlに書いてある依存ライブラリをインストールする。

$ poetry install

 

仮想環境シェルを起動する

$ poetry  shell

 終わるときは単純に  $ exit

仮想環境にライブラリ足す

$ poetry add numpy

--dry-runで、実際にインストールしないでアップデートの状況を見ることもできる