派仙属性/方法の全て?
1.パイラインのすべての属性(attribute)インスタンス属性 クラス属性 1-0. インスタンス属性vsクラス属性クラスプロパティ:すべてのインスタンスが共有されます. すべてのインスタンスで使用する必要がある値を格納します.インスタンスプロパティ:各インスタンスとは独立しています. を使用すると、各インスタンスに値を追加する必要があります.
1-1. インスタンスのプロパティ"init"の方法で作成する属性は"インスタンス属性" である.
1-2. クラス属性クラス属性直接クラスに属性 を作成する.クラス属性はクラスであり、インスタンス(self)からアクセスすることもできます! は、対応するインスタンス属性がない場合、クラス属性で検索できるためです.
属性;メソッド名の検索順序
インスタンス>クラス(Instance>Class)
このクラスのプロパティは通常いつ使用されますか?!今まで業務に と書いたことがありません.
2.Pythonのあらゆる方法インスタンスメソッド=>インスタンス(self)を介して にアクセス静的メソッド=>クラスで直接=>純関数の作成を呼び出す場合! クラスメソッド=>クラス内で直接呼び出す=>クラスプロパティ/メソッドアクセス時! 2-0. インスタンス/静的/クラスメソッドはいつ使用しますか?
????
2-2. スタティツクメソッド静的メソッドはパラメータselfを受け入れない つまり、self.aなどのインスタンス属性にアクセスできません! !静的メソッドは、インスタンスプロパティとインスタンスメソッドを必要としない場合に使用します. 静的メソッドボリュームとは? 静的メソッドは、外部状態に影響を及ぼさない純粋な関数(純粋な関数)を作成するために使用される. 静的メソッドインスタンスの状態を変更しないメソッドを作成する
じゅんかんすう
純関数は副作用がなく、入力値は同じで、常に同じ出力値を返します.
2-3. クラスメソッドクラスメソッドの最初のパラメータは「cls」です! クラスメソッドは静的メソッドと同様に、インスタンスを必要とせずに呼び出されます. クラスメソッドメソッドメソッドでは、メソッドで「クラスプロパティ、クラスメソッド」にアクセスできます. Reference https://dojang.io/mod/page/view.php?id=2378 https://dojang.io/mod/page/view.php?id=2379
1-1. インスタンスのプロパティ
>>> class Foo:
... def __init__(self):
... self.a = "a"
...
>>>
>>> f = Foo()
>>> f.a
'a'
>>> Foo.a
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: type object 'Foo' has no attribute 'a'
>>>
1-2. クラス属性
>>> class Foo:
... a = "a"
...
>>>
>>> Foo.a # 클래스로 속성 'a'에 접근
'a'
>>> f = Foo()
>>> f.a # 인스턴스(self)로 속성 'a'에 접근
'a'
>>>
>>> f.__dict__
{}
>>> Foo.__dict__
mappingproxy({'__module__': '__main__', 'a': 'a', '__dict__': <attribute '__dict__' of 'Foo' objects>, '__weakref__': <attribute '__weakref__' of 'Foo' objects>, '__doc__': None})
>>>
属性;メソッド名の検索順序
インスタンス>クラス(Instance>Class)
2.Pythonのあらゆる方法
????
2-2. スタティツクメソッド
class IAmClass:
def __init__(self):
self.a = 1
@staticmethod
def i_am_method(para1, para2): # 파라미터에 "self"가 없어요!
pass
じゅんかんすう
純関数は副作用がなく、入力値は同じで、常に同じ出力値を返します.
class IAmClass:
count = 0
def __init__(self):
self.a = 1
@classmethod
def i_am_method(cls, para1, para2): # 파라미테어 cls가 있어요!!
print(cls.count)
Reference
この問題について(派仙属性/方法の全て?), 我々は、より多くの情報をここで見つけました https://velog.io/@muchogusto/메서드의-모든-것テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol