今すぐマスター!Python self class の使い方

2021年6月9日水曜日

Python

t f B! P L

その前に

最近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

このブログを検索

要望について

ブログのレイアウトやテーマについての提案をいただきました。現在qooqテーマを適応中です。 語尾を自動でつけるプログラムを作りたいという要望をいただきました。是非紹介したいですがどの言語でどのようなプログラムかなど、お問い合わせフォームで詳しく教えてください!

最近の出来事

最近の出来事
寿司打お勧め75位♪(練習モードだけど)

アンケート

Welcome!

「プログラミング独学ブログ」へようこそ。 Yakinyといいます。幅広い範囲で投稿していますので、ぜひ過去の記事も見てみてください!!コメントも大歓迎です!更新がとまってしまって申し訳ございません

お問い合わせ

名前

メール *

メッセージ *

QooQ