Pythonのhelp()関数を徹底解説!困ったときに頼れる情報源
Pythonでプログラミングをしていると、「この関数はどう使うんだっけ?」「このモジュールにはどんな機能があるんだろう?」「このオブジェクトにはどんなメソッドが使えるんだろう?」といった疑問が頻繁に湧いてきます。そんなとき、いちいちドキュメントサイトを開いたり、Web検索したりするのは手間がかかりますよね。
ご安心ください。Pythonには、まさにそんな疑問を解決するために用意された強力な組み込み関数、help()関数があります。help()関数は、Pythonの対話型シェル(インタプリタ)やスクリプトから、オブジェクトに関するドキュメントや使用方法を直接取得できる、まさに「困ったときの救世主」です。
この記事では、help()関数の基本的な使い方から、その役割、そして具体的な活用事例までを初心者にもわかりやすく解説します。
help()関数とは?Pythonのインタラクティブなドキュメント
Pythonのhelp()関数は、引数として渡されたオブジェクト(関数、モジュール、クラス、メソッド、キーワードなど)に関するヘルプ情報やドキュメンテーション文字列(Docstring)を表示する組み込み関数です。これにより、外部のドキュメントを参照することなく、Python環境内で必要な情報を素早く確認できます。
基本的な使い方:引数を渡して情報を取得
help()関数は、通常1つの引数を取ります。
# 関数に関するヘルプ
print("--- len() 関数のヘルプ ---")
help(len)
# 出力例:
# Help on built-in function len in module builtins:
#
# len(obj, /)
# Return the number of items in a container.
# モジュールに関するヘルプ
print("\n--- math モジュールのヘルプ ---")
import math
help(math)
# 出力例: (mathモジュール全体のドキュメントが表示される)
# Help on built-in module math:
#
# NAME
# math
#
# DESCRIPTION
# This module provides access to the mathematical functions defined by the C standard.
# ... (以下省略)
# クラスに関するヘルプ
print("\n--- str クラスのヘルプ ---")
help(str)
# 出力例: (strクラス全体のドキュメントが表示される)
# Help on class str in module builtins:
#
# class str(object)
# | str(object='') -> str
# | str(bytes_or_bytearray, encoding='utf-8', errors='strict') -> str
# ... (以下、メソッドなどの説明が続く)
# オブジェクトのメソッドに関するヘルプ
print("\n--- list.append() メソッドのヘルプ ---")
my_list = []
help(my_list.append)
# 出力例:
# Help on built-in method append of list instance:
#
# append(object, /) method of builtins.list instance
# Append object to the end of the list.
引数なしでhelp()を呼び出すと…?
引数なしでhelp()を呼び出すと、インタラクティブヘルプモードに入ります。このモードでは、プロンプトが表示され、調べたいキーワードやオブジェクト名を入力すると、そのヘルプ情報が表示されます。モードを終了するにはquitまたはqと入力します。
# 対話型シェルで実行
# >>> help()
#
# Welcome to Python 3.x's help utility!
#
# If this is your first time using Python, you should definitely check out
# the tutorial at https://docs.python.org/3/tutorial/.
#
# Enter the name of any module, keyword, or topic to get help on.
# To quit this help utility and return to the interpreter, enter "quit".
#
# help> list
# ... (listに関するヘルプが表示される)
# help> topics
# ... (ヘルプトピックの一覧が表示される)
# help> quit
# You are now leaving help and returning to the Python interpreter.
インタラクティブヘルプモードは、特に何から調べればいいか分からないときに、キーワードの一覧を見たり、次々と関連情報を調べたりするのに便利です。
help()関数の表示内容とカスタマイズ
help()関数は、内部的にオブジェクトの__doc__属性(ドキュメンテーション文字列、Docstring)を読み込んで表示します。Docstringは、関数、クラス、メソッド、モジュールなどの定義の直後に書かれる文字列で、そのオブジェクトの目的や使い方を説明するために使われます。
Docstringの記述例
自分で定義した関数やクラスにもDocstringを記述することで、help()でその情報を表示できるようになります。
def calculate_area(length, width):
"""
長方形の面積を計算します。
Args:
length (int or float): 長方形の長さ。
width (int or float): 長方形の幅。
Returns:
int or float: 計算された長方形の面積。
Raises:
ValueError: 長さまたは幅が非負でない場合に発生します。
"""
if length < 0 or width < 0:
raise ValueError("長さと幅は非負の数値である必要があります。")
return length * width
class Circle:
"""
円の情報を表すクラス。
"""
def __init__(self, radius):
"""
Circleオブジェクトを初期化します。
Args:
radius (int or float): 円の半径。
"""
self.radius = radius
def get_circumference(self):
"""
円周を計算して返します。
Returns:
float: 円周の値。
"""
return 2 * math.pi * self.radius
# help()で確認
print("\n--- calculate_area() 関数のヘルプ ---")
help(calculate_area)
print("\n--- Circle クラスのヘルプ ---")
help(Circle)
print("\n--- Circle.get_circumference() メソッドのヘルプ ---")
my_circle = Circle(5)
help(my_circle.get_circumference)
このように、適切にDocstringを記述することで、コードの可読性が向上し、他の開発者(または未来の自分自身)がコードを理解しやすくなります。
help()関数の活用事例
help()関数は、Pythonプログラミングの学習、デバッグ、そして効率的な開発において非常に役立ちます。
1. 新しい関数やモジュールの使い方を素早く把握する
初めて使う関数や、インポートしたばかりのモジュールの機能を知りたいときに、Web検索よりも手軽に情報を得られます。
2. オブジェクトのメソッドや属性を確認する
特定のオブジェクトがどんなメソッドを持っているか、どんな属性を持っているかを知りたいときに便利です。特に、IDEのコード補完機能が効かない場合や、より詳細な情報が必要な場合に役立ちます。
3. ドキュメントの確認と品質向上
自分で書いたコードのDocstringが正しく表示されるかを確認し、より分かりやすいドキュメントになるように改善するのに使えます。
4. デバッグ時の情報収集
プログラムが期待通りに動かないとき、関連する関数やメソッドの挙動をhelp()で再確認することで、問題の特定につながることがあります。
まとめ
Pythonのhelp()関数は、Python環境内で直接、関数、モジュール、クラス、メソッドなど、あらゆるオブジェクトに関する詳細なドキュメントや使用方法を表示するための強力な組み込み関数です。__doc__属性に記述されたDocstringを読み込むことで情報を提供し、引数なしで呼び出すとインタラクティブヘルプモードに入ります。
help(object): 指定したobjectのヘルプ情報を表示します。help(): インタラクティブヘルプモードに入り、キーワードやオブジェクト名を入力して情報を調べることができます。PythonのDocstring(ドキュメンテーション文字列)を読み込んで表示します。
学習、デバッグ、コードの理解、ドキュメントの品質向上に不可欠なツールです。
この関数を使いこなすことで、Pythonプログラミングの学習効率が飛躍的に向上し、よりスムーズで質の高い開発ができるようになるでしょう。困ったときは、まずはhelp()を試してみてください。
■プロンプトだけでオリジナルアプリを開発・公開してみた!!
■AI時代の第一歩!「AI駆動開発コース」はじめました!
テックジム東京本校で先行開始。
■テックジム東京本校
「武田塾」のプログラミング版といえば「テックジム」。
講義動画なし、教科書なし。「進捗管理とコーチング」で効率学習。
より早く、より安く、しかも対面型のプログラミングスクールです。
<短期講習>5日で5万円の「Pythonミニキャンプ」開催中。
<月1開催>放送作家による映像ディレクター養成講座
<オンライン無料>ゼロから始めるPython爆速講座

