noraworld / scraps

Just my scraps, like Zenn scraps feature
0 stars 0 forks source link

Python のクラスやモジュール周りのあれこれ #9

Open noraworld opened 2 years ago

noraworld commented 2 years ago

Python におけるクラス定義のキホン:

https://qiita.com/ishigen/items/2d8b6e6398743f2c8110

上記の記事ではクラス名が some_class のようになっているが、SomeClass のほうが良さそう。

noraworld commented 2 years ago

__init__ について:

https://techacademy.jp/magazine/24530

noraworld commented 2 years ago

モジュールについて:

https://techacademy.jp/magazine/50128

Python では言語的にモジュールというものは存在せず、単に別ファイルを import することで、いわゆるオブジェクト指向型言語のモジュールと似たような振る舞いをする書き方ができる。

noraworld commented 2 years ago

プライベートメソッドについて:

https://www.nikutama.com/2019/10/13/python-memo-private/

private のような予約語はなく、メソッドの先頭に __ (アンダースコア 2 つ) をつけることで実現する。

ちなみに protected なメソッドを定義したい場合は _ (アンダースコア 1 つ) をつける。

noraworld commented 2 years ago

継承と super() について:

https://qiita.com/Anaakikutsushit/items/c67d4edb0c01a97f3130

親クラスにもあるメソッドを子クラスでそのまま定義しようとすると、親クラスで設定されていた変数などが消えてしまうので、そういうときは super() を使う。