基本的なクラスの形は以下になります。world!')(object)は記載しなくてもいいですが、以降で説明しますがクラスの継承と区別する上で個人的に記載するのが好みです。上記まではクラス定義で以降で実際にクラスを呼ぶところを書いていきます。Test()これでインスタンスが生成されます。クラスの中の関数(say_hello)を呼ぶには、インスタンス.関数と以下のように呼べます。world!コンストラクタとデストラクタコンストラクタコンストラクタはインスタンスを生成した際に一度だけ呼ばれるもので、主に初期化する際に用いられます。__init__で定義します。ここではコンストラクタで取得したwordをself.wordに格納しsay_helloの関数で表示させています。{}'.format(self.word))先ほどと同様にインスタンスを生成し、関数(say_hello)を呼んでみます。world!出力は先程と同じですが、インスタンス生成時に引数として'wold'を渡しています。__init__が呼ばれ、クラス内の情報を持つself.wordに引数の情報を渡します。クラス内の関数は全て第一引数にselfを記載する必要があります。呼び出し元での第一引数はクラス内では第二引数となります。例外もあり以降で説明します。デストラクタ次はデストラクタに関して記載していきます。コンストラクタが初期化処理だとすると、デストラクタは終了処理で処理の最後に呼ばれるものになります。__del__で定義します。print('end')先ほどと同様にインスタンスを生成し、関数(say_hello)を呼んでみます。デストラクタが最後に呼ばれていることを確かめるため、関数(say_hello)を読んだ後に**********を表示します。wold!**********end上記で全ての処理が終わった後にデストラクタが呼ばれることが確認できると思います。クラス内で定義した他の関数を呼ぶ方法クラス内で関数を作成している際に、クラス内にある別な関数を呼びたいということがあると思います。その際には、self.関数で呼び出すことができます。ここでは新たにend_hello関数を定義しており、それをsay_helloでself.end_hello()と呼んでいます。print('end')先ほどと同様にインスタンスを生成し、関数(say_hello)を呼んでみます。wold!**********endコードは増えていますが出力している内容は同じなので結果も先程と同じになります。基本的な部分をまとめてみました。クラスの継承とは他の関数の機能を引き継いだ状態でクラスを作成できます。似た処理を複数のクラスで使いたい場合に、共通処理を持つクラスを作成し、それを各クラスで継承することでコード量を減らすことができます。pythonではprivate変数※を表すのに変数名の前に_(アンダースコア)を付けます。doctestpythonのdoctestを試してみました。2021年Goの環境構築の覚書です。小ネタpython関連の小ネタを書いて行きます。コメントをキャンセルメールアドレスが公開されることはありません。*サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。上に表示された文字を入力してください。欲しいもの買って良かったものタイトルとURLをコピーしました。