Pythonで関数やクラスを書くときに、**「この関数は何をするの?」**と後から見て分からなくなること、ありますよね。
そんなときに役立つのが docstring(ドックストリング)
です。
この記事では、Pythonのdocstringの使い方や活用方法を、初心者向けにわかりやすく解説します!
Docstringって?

docstring とは、関数・クラス・モジュールの最初に書く説明文のことです。
関数の処理内容を記述しておくことで、後から読み返すときや他人にコードを渡すときに分かりやすくなるというメリットがあります。
docstring は """ 三重のダブルクォート """
または ''' 三重のシングルクォート '''
で囲みます。
例えば、以下のように関数の真下に記述したりします。
def test(x,y):
'''testの計算'''
Docstringの型
def greet(name):
"""名前を受け取って挨拶文を返す関数です"""
return f"こんにちは、{name}さん!"
上記の例では、関数 greet
のすぐ下に説明文(docstring)が書かれています。
この説明文は、あとで関数の使い方を確認したいときに見ることができます。
参照方法
方法①:help() 関数で確認する
help(greet)
出力:
Help on function greet in module __main__:
greet(name)
名前を受け取って挨拶文を返す関数です
方法②:__doc__ 属性を使って確認する
print(greet.__doc__)
出力:
名前を受け取って挨拶文を返す関数です
コメントとの違い
種類 | 書き方 | 使い方 | プログラム上の扱い |
---|---|---|---|
コメント | # から始める | 実装メモ・無効化 | 実行時に無視される |
docstring | """文字列""" | 関数・クラスの説明として使う | 実行時も文字列として残る |
補足:
- コメントは、コードを一時的に無効化したり、行ごとにメモを書いたりする際に使います。
- docstringは、主に関数やクラスの説明を外部から参照するための記述です。
実際の使用例
def average(x, y):
"""2つの数値の平均を返す関数"""
return (x + y) / 2
print(average(10, 20)) # → 15.0
print(average.__doc__) # → "2つの数値の平均を返す関数"
記述する際は、インデントに注意する必要があります。また、help(関数名)とすることでも参照できます。
複数行のdocstringの書き方(PEP 257準拠)
def calculate_tax(price, rate=0.1):
"""
税込み価格を計算する関数
Parameters:
price (float): 元の価格
rate (float): 税率(デフォルトは10%)
Returns:
float: 税込み価格
"""
return price * (1 + rate)
このように、複数行に渡るdocstringでは、「関数の目的」「引数」「戻り値」を明記すると親切です。
まとめ
項目 | 内容 |
---|---|
docstringとは? | 関数・クラスに書く説明文 |
書き方 | """ 説明文 """ |
参照方法 | help() または __doc__ |
コメントとの違い | docstringは実行時にも残る文字列 |
Pythonでは、ドキュメントを書きながら開発する文化があります。docstringはその第一歩としてとても重要です。
ぜひ、今後のコードには 説明をdocstringとして書く習慣を取り入れてみましょう!