環境設定 数値 文字列 正規表現 リスト タプル 集合 辞書 ループ 関数 クラス データクラス 時間 パス ファイル スクレイピング その他

Python のクラスをざっくり解説:インスタンス変数とインスタンスメソッド

最終更新日 2023.02.18

Python のクラスは class で定義し、関数と同じように : を終わりにつけます。

class User:
    def __init__(self):
        self.name = ''


a = User()

print(a)  # <__main__.User object at 0x1011f7e90>
print(a.name)  #

a.name = 'Apple'

print(a.name)  # Apple

クラス User は抽象的な型です。

整数型や文字列型 : Python が最初から用意している型
User : あなたが新しくつくった型

3 は整数型のインスタンス、California は文字列型のインスタンスです(正確でない)。上の aUser という型のインスタンス。

インスタンス変数

nameUser のインスタンス変数です。インスタンス変数はインスタンスがもつ変数。

class User:
    def __init__(self):
        self.name = ''


a = User()
b = User()

a.name = 'cat'
b.name = 'dog'

print(a.name)  # cat
print(b.name)  # dog

インスタンスメソッド

class User:
    def __init__(self):
        self.name = ''

    def hello(self):
        print('my name is ' + self.name)


a = User()
b = User()

a.name = 'cat'
b.name = 'dog'

a.hello()  # my name is cat
b.hello()  # my name is dog

hello をインスタンスメソッドといいます。インスタンスの ahello を呼んでいるため

my name is cat

と出力されています。