2.4 KiB
2.4 KiB
| description | applyTo |
|---|---|
| Pythonコーディング規約とガイドライン | **/*.py |
Pythonコーディング規約
Python指針
- 各関数に対して明確で簡潔なコメントを記述する。
- 関数には説明的な名前を付け、型ヒントを含める。
- PEP 257の規約に従ったdocstringを提供する。
- 型注釈には
typingモジュールを使用する(例:List[str]、Dict[str, int])。 - 複雑な関数は、より小さく管理しやすい関数に分割する。
全般指針
- 常に可読性と明確性を優先する。
- アルゴリズム関連のコードでは、使用したアプローチの説明を含める。
- 保守性の高い実践に沿ってコードを記述し、なぜその設計決定をしたのかの理由をコメントに含める。
- エッジケースを処理し、明確な例外処理を記述する。
- ライブラリや外部依存関係については、その使用方法と目的をコメントで説明する。
- 一貫した命名規則を使用し、言語固有のベストプラクティスに従う。
- 理解しやすく、簡潔で効率的、かつ慣用的なコードを記述する。
コードスタイルと書式
- PythonのPEP 8スタイルガイドに従う。
- 適切なインデントを維持する(各インデントレベルで4スペースを使用)。
- 行の長さが79文字を超えないようにする。
- 関数とクラスのdocstringは
defまたはclassキーワードの直後に配置する。 - 適切な箇所で空行を使用して関数、クラス、コードブロックを分離する。
エッジケースとテスト
- アプリケーションの重要なパスには必ずテストケースを含める。
- 空の入力、無効なデータ型、大規模なデータセットなどの一般的なエッジケースを考慮する。
- エッジケースとそれらのケースで期待される動作についてコメントを含める。
- 関数の単体テストを記述し、テストケースを説明するdocstringで文書化する。
適切な文書化の例
def calculate_area(radius: float) -> float:
"""
半径を指定して円の面積を計算する。
Parameters:
radius (float): 円の半径。
Returns:
float: π * radius^2で計算される円の面積。
"""
import math
return math.pi * radius ** 2