#72

クラスとインスタンス(オブジェクトの基本)

設計図(クラス)から実体(インスタンス)を作る、オブジェクト指向の入り口を学ぶ。

解説

これまでは関数で処理をまとめてきました。クラスは、関連するデータ(状態)と処理(振る舞い)を1つにまとめる仕組みです。 クラスは「設計図」で、そこから作る実体を「インスタンス(オブジェクト)」と呼びます。class Dog: と書いて設計図を定義し、Dog() と書くと実体が1つ作られます。同じ設計図からいくつでも作れます。 クラスの中に書く関数を「メソッド」と呼びます。メソッドの第1引数 self は「自分自身(そのインスタンス)」を指す約束で、呼び出すときは pochi.bark() のように書きます(self は自動で渡されます)。 Pythonでは整数や文字列も含めてすべてがオブジェクトです。type() でそのオブジェクトがどのクラスから作られたかを確認できます。

書き方

class クラス名: — クラス(設計図)を定義する。先頭は大文字が慣習。
・インスタンス化: 変数 = クラス名() で実体を作る。
・メソッド: def メソッド名(self): クラス内に定義する関数。self は自分自身。
・呼び出し: インスタンス.メソッド名()(self は自動で渡る)。
・type(オブジェクト): どのクラスのインスタンスかを返す。

書いて動かす

この回の課題

Dog クラスに bark() メソッドを定義し、2匹のインスタンスを作ってそれぞれ鳴かせ、type() で型を確認してみよう。

コードはあなたの端末の中だけで動きます(サーバーには送られません)。進み具合もこのブラウザに保存されます。

もっと本格的に使うなら

Windows版 InsightPy なら、書いたコードを保存して業務の自動化まで進められます。学習センターはずっと無料です。