
【Python】classとコンストラクタ(constructor)の基本を解説
公開: 更新:Pythonのclassとコンストラクタ(constructor)の基本
【サンプルコード】
class Animal:
def __init__(self, name, species):
self.name = name
self.species = species
my_pet = Animal("Buddy", "Dog")
print(my_pet.name)
print(my_pet.species)
【実行結果】
Buddy
Dog
上記のPythonのコードでは、まず「Animal」という名前のclassを定義しています。classはオブジェクトを作成するための設計図のようなもので、特定のデータや機能を持たせることができます。ここで定義されている「__init__」は、classのコンストラクタ(初期化メソッド)です。
コンストラクタはclassのインスタンスが作成される際に自動的に呼ばれる特別なメソッドで、初期設定を行う際に使用されます。このコンストラクタには「self」、「name」、「species」という3つのパラメータがあります。
「self」は現在のインスタンスを指し、class内の他のメソッドや属性にアクセスするために使用されます。「name」と「species」は外部から渡される値で、この例ではそれぞれ「Buddy」と「Dog」としています。
コンストラクタ内で「self.name = name」と「self.species = species」としている部分では、渡された値をインスタンスの属性として設定しています。
「my_pet = Animal("Buddy", "Dog")」の行では「Animal」classの新しいインスタンスを作成しており、「"Buddy"」と「"Dog"」という引数がコンストラクタに渡され、インスタンスの「name」と「species」属性がそれぞれ設定されます。
最後の2行では「print」関数を使って、my_petインスタンスの「name」と「species」属性の値を出力しています。このようにclassとコンストラクタを使うことで、同じ構造を持つ様々なオブジェクトを効率的に作成することが可能です。
※上記コンテンツの内容やソースコードはAIで確認・デバッグしておりますが、間違いやエラー、脆弱性などがある場合は、コメントよりご報告いただけますと幸いです。
【PR】『Python』を学べる企業・個人向けのプログラミングコース
ITやプログラミングに関するコラム
- ChatGPTでプロンプトを使うコツとNG例|シーン別のプロンプト例まで徹底解説
- ChatGPT 4oアップデートで高クオリティな画像生成が可能に!具体例や作り方、プロンプトのコツを紹介
- 【Open AI・Claude】プロンプトジェネレーターの使い方。ChatGPTで活用するコツや利用料金も併せて解説
- 【Python】@(アットマーク)の意味を簡単に解説
- 【Python】match case(match文)で複数条件を処理する方法