Pythonのベース(24) - インスタンス属性とオブジェクト指向

3つのプログラミングパラダイム:プログラミング方法論

プロセス指向、関数型プログラミング、オブジェクト指向(だけでなく、最も強い最強の方法)

関数型プログラミングは、再帰ループではなく、プログラミング機能の意味で、パラメータや戻り値の機能は機能ではなく、変数の代入であるが、数学的な意味の関数であり、

進化的プログラミング、プログラミングプロセス---(構造化されていない未組織複合悪いメンテナンス、、)---の構造及び動作を形成するように編成機能ロジックを複製---属性一緒にグループ化されたデータオブジェクトは、オブジェクトを記述しますプログラミングはオブジェクト指向である、オブジェクト指向のオブジェクトは、バインドするために私有財産とアクション、オブジェクトまたはクラスをカプセル化されています

すべてのものは、プロパティとアクションを記述するために使用することができます

だけでなく、クラスオブジェクト指向の機能も、ネストされた関数の実装を使用して、オブジェクト指向可能です

クラス:物事のクラスの同じ機能と操作は、クラスを一緒に統合され、クラスが抽象的概念であり、構造化され、データ構造クラスです

オブジェクト:特定のものは、クラスベースで、具体的な存在を作成するだけでなく、機能の統合と一緒に働き、これはオブジェクト指向設計と呼ばれています

オブジェクト指向プログラミング:OOPは(配向プログラミングオブジェクト)例として定義され、オブジェクト・クラス+オブジェクト指向設計を達成するために

カテゴリー:

このクラスは、()を高めるためにインスタンス化されると

クラシッククラス名:クラスcalss新しい名前(名):のpython3で次々に新たなカテゴリがあります。

プロパティは、2つのクラスが含まれています:dataプロパティには、通過、と呼ばれるオブジェクト指向の方法で変数の関数であるプロパティですポイント実際には、訪問し、ポイントを見つけるために、プロパティ辞書を通じてその機能によって財産を見つけることです、この時点ではクラスと同等です。 __dict __ [「属性名」]()コンテンツの属性辞書を呼び出します

.__ dict__にクラスは、クラスだけで対応する辞書の詳細な内容のdictクラスの名前を入れた辞書DIR属性であります

 オブジェクト:

 

クラスSTH:
     デフ __init__ (自己、名前、年齢):
        self.name = 名前
        self.age = 年齢

S1 = STH(' アレックス'' 18 ' プリント(s1.name)

実際に辞書のキーを見つけ、インスタンス化時に自己自身の一例であり、initは初期化機能が自動的にパラメータを取りますし、キーを見つけるために、辞書に実際の辞書、self.nameを返し、以下を参照してください

 

クラスSTH:
     デフ __init__ (自己、名前、年齢):
        self.name = 名前
        self.age = 年齢

S1 = STH(' アレックス'' 18 ' 、印刷(S1。__dict__

結果は

{ アレックス年齢18です }#は、実際に見る辞書データ構造であるが、特別なクラスを処理するこのタイプのデータは自動的に返される戻り値は必要ありません追加

機能の__init__スコープが見つからない場合は、コールが全体のクラススコープのプロパティとメソッドの例を見つけることですので、それは、層を出てきます。関数属性は、クラスに属性データの唯一のインスタンスをスコープ属しています

辞書のクラスは、クラスのメソッドを含む実施例の範囲よりも大きいので、パラメータが渡されたときに、クラスメソッドは、インスタンス名を自己を増やす必要があり、そうプラス点は、クラスで使用される調整可能な関数法の例であります、追加の自己引数関数法と同じくらい長いです。ちょうど初期化関数アプローチを結合するが、この方法で使用した場合にのみで呼び出されますので、メモリを節約していない、あなたはすべてが入ってくるロードする必要はありませんインスタンス化深く考え、。クラス設計のメソッド呼び出しの一例であるクラスを呼び出すことです。

実際には、最初のパラメータは、自動変速機の一種で、あなたは自動的に彼の最初のパラメータを渡されたクラスの関数を呼び出して、他の名前を再生することができます

すべてのクラスの関数の最初の引数は、自己、という名前のクラスcamelCasing形式でなければなりません

クラスCRUDは削除デル

検索は、クラスの特性に影響しない変更するには追加および削除の例としては、彼が彼のスコープを使用していた、それはその範囲内にない彼の割り当てで自己を増加させなかったときは、変数を定義する場合、変数の全体の機能であります

= 12である
 クラス:STH = 14
     DEF  __init__ (自己、名前、年齢が):
        self.name = 名前
        self.age = 年齢の
         印刷(A)   ここではありませんクラス変数、増加なしのセルフ形式ので、与えられずに、コールポイントは無用である場合。それはクラスを参照するために重要ではないと

S1 = STH(アレックス18であるプリント(sth.a)

 12である
14

動作は一例でなければならない割り当ては、完全な割り当てリストなしで、実施例のように追加した場合を終了し、クラス、インスタンス変数の特性にのみ効果を追加することができません

 

クラスSTH: = [14 ]
     DEF  __init__ (自己、名前、年齢):
        self.name = 
        self.age = 年齢

S1 = STH(' アレックス'' 18 ' s1.a = [ 'A'、 'B'] 
s1.a.append(' C ' プリント(S1。__dict__ プリント(STH。__dict__

 

おすすめ

転載: www.cnblogs.com/dayouge/p/11183934.html