●学校情報

講座一覧・募集状況

学習方法

学習サポート

修了生の評価

受講生の横顔

当学院について

入学相談

入学手続

 

●講座情報

技術者養成講座

プログラミング講座

WEB講座

情報処理試験講座

Excel講座

Access講座

 

●関連コラム

関連コラム

関連用語集

 

logo

 

 

関連用語集

Pythonの継承(Inheritance)とは?親クラスから機能を受け継ぐしくみを解説

継承(Inheritance)とは、あるクラス(親クラス)の機能や性質を、別のクラス(子クラス)が引き継いで使えるようにする仕組みです。 Pythonでは、コードの再利用性を高め、効率よくプログラムを設計するために使われます。

継承の基本構文

class 親クラス名:
    # 共通の属性やメソッド

class 子クラス名(親クラス名):
    # 追加や変更の内容

例:Animalクラスを継承したDogクラス

class Animal:
    def __init__(self, name):
        self.name = name

    def speak(self):
        print(f"{self.name}が鳴きました。")

class Dog(Animal):
    def bark(self):
        print(f"{self.name}がワンと鳴いた!")

子クラスのインスタンスを使う

d = Dog("ポチ")
d.speak()  # → ポチが鳴きました。
d.bark()   # → ポチがワンと鳴いた!

Dog クラスは Animal クラスの機能をそのまま使うことができます。

コンストラクタの継承と super()

子クラスで __init__() を独自に定義したいときは、super() を使って親の初期化処理を呼び出すのが一般的です。

class Cat(Animal):
    def __init__(self, name, color):
        super().__init__(name)
        self.color = color

super() により、親クラスのコンストラクタが適切に実行されるようになります。

メソッドのオーバーライド(上書き)

親クラスと同じ名前のメソッドを子クラスで定義すると、そのメソッドを上書き(オーバーライド)できます。

class Bird(Animal):
    def speak(self):
        print(f"{self.name}がチュンチュン鳴いた!")
b = Bird("すずめ")
b.speak()  # → すずめがチュンチュン鳴いた!

継承のメリット

  • 共通の機能をまとめて管理できる
  • コードの重複を減らせる
  • 修正や拡張がしやすくなる

多重継承(必要なときだけ)

class A:
    pass

class B:
    pass

class C(A, B):
    pass

Pythonでは複数の親クラスを継承することも可能ですが、使いすぎには注意が必要です。

まとめ

Pythonの継承(Inheritance)は、クラスの共通機能を引き継ぎながら、新しい機能を追加したり、必要に応じて変更したりするための仕組みです。 super() を使った初期化や、オーバーライドによる柔軟な振る舞いの変更にも対応できます。

まずは基本的な親子関係を作ってみて、クラスの再利用性や拡張性の高さを体感してみましょう!

 

Python関連用語集

−−−−−  Python  −−−−−

Pythonのインデント(Indentation)とは?構文エラーを防ぐための基本ルール

Pythonの変数(Variable)とは?使い方・ルール・注意点をやさしく解説!

Pythonのデータ型(Data Type)とは?基本型と使い方をやさしく解説

Pythonの関数(Function)とは?定義・使い方・引数の基本をやさしく解説

Pythonのリスト(List)とは?配列的な使い方と便利な操作を解説!

Pythonの辞書(Dictionary)とは?キーと値でデータを管理する便利な構造

Pythonのタプル(Tuple)とは?リストとの違いや使い方をやさしく解説

Pythonの条件分岐(if文)とは?基本構文から応用までやさしく解説

Pythonのループ(for / while)とは?繰り返し処理の基本をやさしく解説

Pythonのモジュール(Module)とは?コードを分割・再利用する方法

Pythonのimport文とは?モジュールを読み込んで機能を拡張しよう

Pythonの標準ライブラリ(Standard Library)とは?便利な内蔵機能を紹介

NumPy(ナンパイ)とは?Pythonで高速な数値計算を行うための基本ライブラリ

Pandas(パンダス)とは?Pythonでデータを簡単に操作・分析できる強力ライブラリ

Matplotlibとは?Pythonでグラフを描くための基本ライブラリ

Pythonのクラス(Class)とは?オブジェクト指向の基本をわかりやすく解説!

Pythonのオブジェクト(Object)とは?クラスとの関係や特徴をやさしく解説

Pythonの継承(Inheritance)とは?親クラスから機能を受け継ぐしくみを解説

Pythonのメソッド(Method)とは?クラスとオブジェクトの操作方法をわかりやすく解説

Pythonのコンストラクタ(__init__)とは?クラスの初期化を自動化する仕組みを解説!

Pythonのインタプリタ(Interpreter)とは?動作のしくみと使い方を解説

Jupyter Notebook(ジュピター・ノートブック)とは?Python学習やデータ分析に最適な環境

Pythonの仮想環境(Virtual Environment)とは?プロジェクトごとに安全に環境を管理しよう

pip(パッケージ管理ツール)とは?Pythonのライブラリを簡単にインストール・管理しよう

Pythonのスクリプトファイル(.py)とは?作り方・実行方法・基本構文を解説

Pythonの例外処理(Exception Handling)とは?エラーからプログラムを守る方法を解説

Pythonのtry / except構文とは?エラーを防いで安心なコードに!

Pythonのassert文(アサーション)とは?条件チェックでバグを防ごう

Pythonのデコレーター(Decorator)とは?関数に機能を追加する便利な仕組み

Pythonのリスト内包表記(List Comprehension)とは?