はじめに
前回の記事では、PEP 8の主要なガイドラインについて詳しく説明しました。
第一部のほうが重要なので、そちらを先に覚えましょう!
今回は、PEP 8のその他の重要なガイドラインについて解説します。
これらのガイドラインを理解することで、Pythonコードの可読性と保守性をさらに向上させることができます。
PEP 8の追加ガイドライン
波括弧/ブラケット/括弧の位置
波括弧 {}
、ブラケット []
、括弧 ()
は、開くときに前の文字と同じ行に置きます。
複数行にわたる場合、閉じる括弧は内容と同じインデントレベルに置きます。
括弧の直後にはスペースを入れず、引数や要素の間にスペースを入れます。
値は、開く括弧の次の行から始め、インデントを揃えます。
# 悪い例1
my_list = [1, 2, 3,
4, 5, 6
]
# 悪い例2
my_list = [
1, 2, 3,
4, 5, 6
]
# 悪い例3
my_list = [
1, 2, 3,
4, 5, 6]
# 良い例
my_list = [
1, 2, 3,
4, 5, 6
]
2項演算子の改行位置
2項演算子の前で改行するのではなく、後で改行します。
これにより、演算子が次の行の先頭に来ることで、コードの構造が明確になります。
# 悪い例
result = (some_variable
+ another_variable
- yet_another_variable)
# 良い例
result = (some_variable +
another_variable -
yet_another_variable)
複合文と短い文
複合文(複数の文を1行に書くこと)は避け、if
、for
、while
文の後に短い文を1行で記述することも避けます。
これにより、コードの可読性が向上します。
# 悪い例
if condition: do_something()
for i in range(5): print(i)
# 良い例
if condition:
do_something()
for i in range(5):
print(i)
インラインコメント
インラインコメントは、コードの右側に書かれる短いコメントです。
これらは控えめに使用し、コメントとコードの間に少なくとも2つのスペースを入れます。
x = x + 1 # インクリメント
関数やメソッドに渡す引数
関数やメソッドに渡す引数は、可変オブジェクトをデフォルト値にしないようにします。
また、キーワード引数を使用して可読性を向上させます。
# 悪い例
def append_to_list(value, my_list=[]):
my_list.append(value)
return my_list
# 良い例
def append_to_list(value, my_list=None):
if my_list is None:
my_list = []
my_list.append(value)
return my_list
return文の書き方
return
文は、値を返す際に括弧を使用しません。
値を返さない場合は、return
の後に何も書かないか、return None
を使用します。
# 悪い例
def my_function():
return (x)
# 良い例
def my_function():
return x
# 値を返さない場合
def another_function():
return
# 値を返さない場合2
def another_function():
return None
PEP 8以外の主要なPEP
- PEP 20: Zen of Python
Pythonの設計哲学を簡潔に表現した20の指針です。 - PEP 257: Docstring Conventions
ドキュメンテーション文字列(docstrings)の書き方に関するガイドラインです。 - PEP 484: Type Hints
型ヒントの使用方法を定義しています。型ヒントを使用することで、コードの可読性と保守性が向上し、IDEの補完機能も強化されます。
まとめ
PEP 8のガイドラインを理解し、実践することで、Pythonコードの可読性と保守性を大幅に向上させることができます。
これらのガイドラインは、コーディングスタイルの一貫性を保ち、チーム開発における効率を高める重要な要素です。
初心者の方は、これらのガイドラインを日々のコーディングに取り入れ、Pythonプログラミングスキルを向上させていきましょう。
次回は、PEP 8以外の重要なPEPについても解説します。
引き続き、Pythonのスタイルガイドを学んでいきましょう!