Tweet
Logo
    poetry を使って python の project を作る
    poetry を使って python の project を作る

    poetry を使って python の project を作る

    • はじめに
    • 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 --version

    https://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 init

    poetry new すると、以下のようなフォルダ構造が作られます

    $ poetry new test-project
    $ cd test-project/
    $ tree
    .
    ├── README.rst
    ├── pyproject.toml
    ├── test_project
    │   └── __init__.py
    └── tests
        ├── __init__.py
        └── test_test_project.py

    poetry init の場合は対話式のインターフェースが起動し、必要な情報を入れ終わると pyproject.toml のみが作られます

    4. poetry に library を追加

    poetry add コマンドを使って必要な library を追加できます

    例えば pandas を追加したい場合は以下のような形になります

    $ poetry add pandas

    5. poetry 環境を構築

    以下のコマンドで実際に環境を構築します

    $ poetry install

    root 直下に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
    © 2025 DROBE All rights reserved.