6.1 オブジェクトとは何か
Pythonに含まれるものは、数値からモジュールに至るまで、すべてが オブジェクト です。 普段はPythonがオブジェクトの仕組みを特殊構文で隠しているため、オブジェクトの内部を意識する必要があるのは、独自のオブジェクトを作りたいときや、既存のオブジェクトの動作を変えたいときだけです。
オブジェクトの構成要素
Section titled “オブジェクトの構成要素”オブジェクトには、大きく分けて以下の2つの要素が含まれています。
- データ(属性、または変数): そのオブジェクトが持つ情報。
- コード(メソッド、または関数): そのオブジェクトに対する操作や振る舞い。
オブジェクトは個別の具体的な実体(インスタンス)を表現し、メソッドはそのオブジェクトが他のものとどのようにやり取りするかを定義します。
例:数値と文字列のオブジェクト
Section titled “例:数値と文字列のオブジェクト”例えば num = 7 と記述した場合、内部的には「値が7の整数型オブジェクト」が作られ、num という名前にそのオブジェクトの参照が代入されています。
また、文字列もオブジェクトであり、専用のメソッドを持っています。
# 整数オブジェクトの作成num = 7
# 文字列オブジェクトとそのメソッド(動詞)の使用例word1 = 'cat'print(word1.capitalize()) # Cat
word2 = 'duck'print(word2.replace('d', 'b')) # buckクラスとオブジェクトの関係
Section titled “クラスとオブジェクトの関係”Pythonには、すでに整数や文字列を生成するための「クラス」が存在しています。 今まで誰も作ったことがない、完全に新しいオブジェクトを作りたい場合には、そのオブジェクトの内容(設計図)を示す「クラス」を新しく定義する必要があります。