1.1 KiB
1.1 KiB
applyTo
| applyTo |
|---|
| **/*.py |
Python Instructions
Version / Environment
- Python 3.13 を前提にする。
- パッケージ管理と仮想環境管理には
uvを使用する。
Type Hints
- すべての関数に引数と戻り値の型ヒントを付ける。
Anyは必要最小限にする。dict/listは可能な限り具体的に型指定する。- 戻り値がない関数は
-> Noneを明示する。
Path / File
pathlib.Pathを使用する。os.pathは使用しない。- ファイル読み書きでは
encoding="utf-8"を明示する。 - パスを受け取る関数では、可能な限り
Path型を使用する。
Error Handling
- 例外は握りつぶさない。
- 原因を失わないように
raise ... from eを使用する。 - ユーザー表示用エラーと内部エラーを分離する。
- 内部エラーは
loggingで記録する。
Design
- UI、DB、I/O、ビジネスロジックを分離する。
- 副作用のある処理は関数名から意図が分かるようにする。
- magic number は定数化する。
- 1つの関数に複数の責務を持たせない。