Pythonは「オブジェクト指向」言語のプログラミングです
よって、オリジナルのクラスの宣言も可能です
サンプルとして動物クラスを宣言し
鳴き声メソッドを実行しています
Class宣言、インスタンス化、メソッド実行
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
####################################################### #クラス定義 ####################################################### #動物クラス class Animal : # 動物名 animalName = None # コンストラクタ def __init__(self ,animalName): self.animalName = animalName print(self.animalName) #鳴き声メソッド def cry(self ,val) : print(val) ################################## #クラスのインスタンス化 # 変数 = クラス名(引数) ################################## #ねこ cat = Animal("ねこ") cat.cry("にゃー") #いぬ dog = Animal("いぬ") dog.cry("ワン") |
[実行結果]
コンストラクタ
Pythonでは__init__(self ,○○)メソッドを宣言することで
コンストラクタとして機能します
Spyderのエディタ上では、アンダーバー後にスペースを入力することで
候補として表示されます
※画像はアンダーバー2個入力後にスペースキー
1 2 3 4 5 6 7 8 9 10 |
#動物クラス class Animal : # 動物名 animalName = None # コンストラクタ def __init__(self ,animalName): self.animalName = animalName print(self.animalName) |
動物クラスは、「animalName」動物名というプロパティが存在します
コンストラクタの引数から、「animalName」動物名プロパティへ
値を設定することが可能です
インスタンス化とメソッドの実行
動物クラスから「ねこ」と「いぬ」のインスタンスを生成
ねこの鳴き声は「にゃー」
いぬの鳴き声は「ワン」といった感じです
1 2 3 4 5 6 7 8 9 10 11 12 |
################################## #クラスのインスタンス化 # 変数 = クラス名(引数) ################################## #ねこ cat = Animal("ねこ") cat.cry("にゃー") #いぬ dog = Animal("いぬ") dog.cry("ワン") |
まとめ
- Pythonは「オブジェクト指向」言語
- コンストラクタの宣言は__init__(self ,○○)
Classの基本的な使い方について解説しました
参考になれば幸いです
コメント