windows11でPythonを使っていくための準備をします(WSLは使わないです)
pyenv-winでPythonのバージョン管理と、Poetryを使ってPythonパッケージのインストールをします
Chocolatey
まずは、
MacやLinuxでは、Homebrewというパッケージ管理システムがありますが
Windowsでは、Chocolateyというパッケージ管理システムがあります。
便利なので入れておくとよいと思います
インストール方法は、過去記事参照
pyenv-winのインストール
pyenvは、複数のPythonのバージョンを管理し、プロジェクトごとに切り替えて使うための仕組みです
windowsだと pyenv-win がそれに該当します
Chocolateyでインストールするので、PowerShell(管理者)を実行し、インストール
choco install pyenv-win
インストールできたかは、PowerShell(管理者)を起動しなおしてバージョンの確認を行う
pyenv --version
pyenv 3.1.1
pyenvの使い方
# pyenvのバージョン
pyenv --version
# インストール
pyenv install <バージョン>
# インストール可能なバージョン一覧
pyenv versions
# Pythonのバージョン切替
pyenv global <バージョン>
pyenv local <バージョン>
pyenv local は、実行するとカレントディレクトリに .python-versionファイルが作成され、その中フォルダで実行すると指定したバージョンのPythonで実行できる。
poetryのインストール
引き続き、PowerShellで下記コマンドを実行
(Invoke-WebRequest -Uri https://install.python-poetry.org -UseBasicParsing).Content | py -
参考: https://python-poetry.org/docs/#installing-with-the-official-installer
実行すると以下メッセージが表示されます
Retrieving Poetry metadata
# Welcome to Poetry!
This will download and install the latest version of Poetry,
a dependency and package manager for Python.
It will add the `poetry` command to Poetry's bin directory, located at:
C:\Users\{ユーザー名}\AppData\Roaming\Python\Scripts
You can uninstall at any time by executing this script with the --uninstall option,
and these changes will be reverted.
Installing Poetry (2.1.2)
Installing Poetry (2.1.2): Creating environment
Installing Poetry (2.1.2): Installing Poetry
Installing Poetry (2.1.2): Creating script
Installing Poetry (2.1.2): Done
Poetry (2.1.2) is installed now. Great!
To get started you need Poetry's bin directory (C:\Users\{ユーザー名}\AppData\Roaming\Python\Scripts) in your `PATH`
environment variable.
You can choose and execute one of the following commands in PowerShell:
A. Append the bin directory to your user environment variable `PATH`:
```
[Environment]::SetEnvironmentVariable("Path", [Environment]::GetEnvironmentVariable("Path", "User") + ";C:\Users\{ユーザー名}\AppData\Roaming\Python\Scripts", "User")
```
B. Try to append the bin directory to PATH every when you run PowerShell (>=6 recommended):
```
echo 'if (-not (Get-Command poetry -ErrorAction Ignore)) { $env:Path += ";C:\Users\{ユーザー名}\AppData\Roaming\Python\Scripts" }' | Out-File -Append $PROFILE
```
Alternatively, you can call Poetry explicitly with `C:\Users\{ユーザー名}\AppData\Roaming\Python\Scripts\poetry`.
You can test that everything is set up by executing:
`poetry --version`
このパスにインストールされていて
C:\Users{ユーザー名}\AppData\Roaming\Python\Scripts
削除したい場合は、 --uninstal オプションで実行すればよいとのこと
環境変数にこのパスを追加してね とも書いてありますね。
ご丁寧にパス追加のコマンドまで書かれているのでそれを実行します
PowerShellを再起動して poetry --versionを実行すると
Poetry (version 2.1.2)
のようにバージョンが表示されればOKです
使い方の流れ
プロジェクトを作成
poetry new
追加するパッケージがあれば追加します
poetry add
特定のバージョンを追加したい場合
poetry add
開発で使用するパッケージを追加したい場合
poetry add --dev
パッケージのインストール(仮想環境の作成)
poetry install
パッケージのアップデート
poetry update
事前に何が変更されるか確認したい場合は、
poetry update --dry-run
不要なパッケージの削除
poetry remove
特定のPythonバージョンで実行したい場合
pyenv local <バージョン>
仮想環境で実行
poetry run python
仮想環境に移動して実行
poetry shell
python
参考: 生成AIさん、開発で追加すると便利なパッケージってなーにー?
テスト関連
pytest: テストフレームワーク。シンプルな構文でユニットテストを記述可能。 pytest-cov: テストカバレッジ計測ツール。コードのテスト範囲を可視化。 requests-mock: HTTPリクエストのモック作成。APIテスト時に外部依存を排除。コード品質管理 flake8: コードスタイルチェック(PEP8準拠)。 black: 自動コードフォーマッター。一貫したスタイルを強制。 mypy: 静的型チェッカー。型アノテーションの誤りを検出。
ドキュメンテーション Sphinx: プロフェッショナルなドキュメント生成。Python公式ドキュメントも採用。 mkdocs: Markdownベースの軽量ドキュメントツール。
開発支援ツール ipython: 対話型シェル。デバッグやプロトタイピングに便利。 jupyter: ノートブック環境。データ分析や可視化の実験用。
環境構築・デプロイ twine: PyPIへのパッケージアップロード用。 docker-compose: コンテナ環境の管理(Docker連携)。
その他 pre-commit: Gitコミット前の自動チェック(テスト、リントなど)を実行。 bandit: セキュリティ脆弱性スキャン。