the best richard mille watch replica in the world qualified a watchmaker to use decade.

normal fingers in making often is the components involved with best swiss replicas relojes.
rolex replica helps to make some time one of a kind combined with wonderful.

check prices & features of replicas de relogios online.

Pythonはオブジェクト指向プログラミングをサポートしている言語です。そのためにはクラスを定義、作成することが必要です。Pythonのクラス定義は他の言語と比べると簡単に行えるようになっています。
今回は、Pythonにおける基本的なクラスの扱いについて説明します。

クラスの定義

Pythonではクラスの定義にclass文を使用します。class文を使った定義の仕方は以下のようになります。

class クラス名:

class文の後にそのクラスの名前となるクラス名をつけて、最後に「:」を付け加えます。そのあとに一段落インデントを入れてクラス定義をしていきます。

class Test:
    pass  #何もしないクラスの場合はpassと記入する
test = Test()  #インスタンスを生成

メソッド

クラスにはメソッドを定義することができます。メソッドの定義は以下のように行います。

class クラス名:
    def メソッド名(self):
        #メソッドの定義

メソッドは必ず1つ以上の引数を持ちます。また、引数のうち最初のものはselfという名前にすることになっています。メソッドを呼び出すには以下のようにします。

インスタンス.メソッド名()

class Test:

    def test_print(self):
        print('This is test')
test = Test()      #インスタンス生成
test.test_print()  #メソッド呼び出し

実行結果

This is test

コンストラクタとデストラクタ

メソッドの中でも、インスタンスが生成されるときに自動的に呼び出されるメソッドのことをコンストラクタと言います。コンストラクタを定義するには「__init__」という名前のメソッドを作成します。

class Test:
    def __init__(self, 引数1, 引数2, ….):
        #コンストラクタの定義

__init__も必ずselfという引数が必要になります。それ以外にも引数をつけることができ、その引数はインスタンスを生成する際にクラスを呼び出す時の引数が渡されます。

class Test:
    def __init__(self, num):
        self.num = num;  #このクラスが持つ「num」変数に引数を格納
    def print_num(self):
        print('引数で渡された数字は{}です。'.format(self.num))
test = Test(10)   #ここで渡された引数が__init__のnumに渡される
test.print_num() 

実行結果

引数で渡された数字は10です。

コンストラクタとは逆に、インスタンスが不要になり削除される時に呼ばれるメソッドをデストラクタと言います。デストラクタは「__del__」という名前のメソッドで定義されます。

class Test:
    def __init__(self):
        print('コンストラクタが呼ばれました')
    def __del__(self):
        print('デストラクタが呼ばれました')
test = Test()  #インスタンスを生成
del test      #インスタンスを削除

実行結果

コンストラクタが呼ばれました
デストラクタが呼ばれました

継承

Pythonのクラスも他のクラスを継承し、拡張することができます。クラスを継承する場合はクラス文に親となるクラスを指定します。親のクラスのメソッドを呼び出す場合はsuper()を使います。

class Test:
    def __init__(self, num):
        self.num = num;
    def print_num(self):
        print('引数で渡された数字は{}です。'.format(self.num))
class Test2(Test):  #Testクラスを継承
    def print_test2_info(self):
        print('このクラスはTestクラスを継承しています。')
        super().print_num()  #親クラスのprint_num()を呼び出す
test = Test2(10)
test.print_test2_info()

実行結果

このクラスはTestクラスを継承しています。
引数で渡された数字は10です。

【おすすめ記事】
Pythonを学びたい方は必見!おすすめスクールまとめ5選
【無料で使える】Pythonを勉強できる学習サイト7つ
Pythonの本・参考書の評判
Pythonのコーディングにオススメな無料テキストエディタまとめ