その前に
最近MSIE(Internet explorer)からのアクセスが増えているようです。MSIEだと、正しく表示されない可能性がありますので、最新のMicrosoftEdgeかOpera、GoogleChromeなどのブラウザを利用してください 〇┓ペコッ
今回やること
今回はself class の使い方を紹介したいと思います。self classを使うと、少しコードの量が増えたように見えますが、実は、便利なことが多いのです。
どんなときにつかえるか
例えば、以下のようにclassを使ったときと使わなかったときの結果を比べてみましょう。class Main():
def __init__(self):
self.text = "good morning"
self.changeText()
print(self.text)
def changeText(self):
self.text = "Hello"
if __name__ == "__main__":
Main()
def changeText():
text = "Hello"
text = "Good morning"
changeText()
print(text)
さて結果を比べて見ましょう。
self class利用の場合
Hello利用しない場合
Good morningこの結果から分かることとして、self classの場合はしっかりとchangeTextで変数が変更されて、しかし、利用しない場合は変数が変更されていません。
なぜこのような現象になるかというと、self classの場合、self.○○で定義、変更すると、そのself内(クラス内)で変数がつかえるからです。
しかし、利用しない場合は、changeText内でしか、その変数を使えないのです。
こういうときに役立つので、最近はけっこうself classを使ってます!
__name__ == "__main__"
これについてですが、何かによってはこれが必須だったり、普通に実行するだけなら、不要だったりします。または、作ったスクリプトをモジュールとして利用するときは、これが必要です。
理由は、このスクリプトがモジュールとしてimportされときには__name__ == "__main__"は実行されないからです。
このように、モジュールとしてimportされたときとされなかったときの処理を分けるためには必要なのです。
詳しくは以下のサイトをご覧ください。
Pythonの if __name__ == ‘__main__’ の使い方【初心者向け】
どうだったでしょうか、意味が分からない場合や、間違いがあった場合はコメント気軽にお願いします!
動作環境:
Python 3.9.1
Windows 10
64bit
0 件のコメント:
コメントを投稿