A.オブジェクト指向
1.カテゴリ:それらの事は同じ属性やスキルを持っています
2.オブジェクト:特定のパフォーマンスクラス、本物の具体的な例
1.猫は猫を飼いならされたクラスは、ターゲットです
II。アプリケーションと操作クラス
1.クラスを作成します。
クラスの人: #は、クラス名は大文字で、クラスによってクラスを作成します。
2.クラス角の名前
操作の1クラスのstatic変数
クラスの人: #クラスを作成し、クラス名は大文字 マインド= 「アイデア」 #は、変数、静的変数、staticフィールド定義 信仰= 「信仰」 DEFの __init__ (セルフ): 印刷(「今日は活力日のいっぱいです」) DEFワーク(自己): #のメソッド、関数、動的変数を 印刷する(' 新しい日')
#のクラス名.__ dict__に照会クラスすべて。(CRUD操作を行うことができない) 印刷(人。__dict__ ) #のクラス名.__ dictのは__ [「静的変数」]クエリ静的変数。(推奨しない) 印刷(人。__dict__ [ ' マインド' ])
#単一の変数CRUD操作でユニバーサル。クラス Person.money = 「600 」 #による デル Person.faithの #穿刺 Person.mind = 「思考」 #変更 印刷(Person.mind) #チャールズ 印刷(人を。__dict__)
2クラスの動作方法
Person.work(「パラメータを渡す」)#(推奨されません)メソッドを呼び出します
3.オブジェクトの作成
人() #1 (また、オブジェクト空間と呼ばれる)プロセスのオブジェクトを作成するクラス名+(インスタンス化プロセス)、
限り、クラス名+(など#)、それは自動的にクラスの__init__メソッドを実行します
前記物体の角度
1. static変数操作対象
__dict__すべてのコンテンツオブジェクトのクエリ
すべてはCRUDを行いました。
オブジェクトの操作クラスの静的変数、のみ照会することができます
DEF __init__ (セルフ、名前、年齢、趣味): self.name = 名前 self.age = 年齢の self.hobby =ホビー #パッケージプロパティのオブジェクト空間へ
人= P1(' アレックス'、' 26である'、' バスケットボール' ) p1.sex = ' M ' #によって デル p1.hobbyの #穿刺 p1.age = 18である #の変更 プリント(p1.name) #チャールズ 印刷(P1を。__dict__) #オブジェクト・スペース内のすべての内容を表示する #を出力{「名前」:「アレックス」 、「年齢」:18、「性別」:「 F」}
#1クラス名+()はインスタンス(オブジェクト、オブジェクトを生成します空間)
#2 __init__方法は、画像空間は、自己パラメータを渡すし、自動的に実行され
#3属性は、対象パッケージに対応します
2.オブジェクトのメソッド呼び出し
p1.work()
II。注文照会
1.オブジェクト属性:オブジェクト・スペースを探して起動し、その後、クラスの名前空間を探し、親クラスから見つけます
2.クラスの名前属性:見つけるために、クラス名のスペースで始まり、その後、親クラスから見つけます
物体と物体との間の3は独立しています
III。組み合わせ
#1 の組み合わせ:オブジェクトクラスへのパッケージのプロパティ、クラス属性は、目的とする クラス:GameRole DEF __init__ (セルフ、名前、AD、pH値): self.name = 名前 self.ad = ADの self.ph = pH値の DEFの攻撃(自己、役割): role.ph = role.ph - self.adの 印刷(' %sの%sの攻撃は、%sの血、左%sのヒット'%(self.name、役割を。名前、self.ad、role2.ph)) DEF Weapon_attributes(セルフ、WEA): self.wea = WEAの クラスの武器: DEF __init__(自己、名前、AD): self.name = 名前 self.ad = ADは DEF ファイト(セルフ、ROLE1、role2の): role2.ph = role2.ph - self.adの 印刷(" %S%S取る攻撃% S、%sが血を打つ、血液左%sの'%(role1.name、self.name、role2.name、self.ad、role2.ph)) IF role2.phの== 0: 印刷(' %sの死んだ'%のrole2.name) ROLE1 = GameRole(' アリ '60、500 ) role2の = GameRole('カトリーナ '80、700 ) アックス =武器(' オープン日の斧 '500 ) ブロードソード =武器(' 段平"、300 ) axe.fight(role2の、ROLE1) role1.Weapon_attributes(ブロードソード) 印刷(ROLE1。__dict__ ) role1.wea.fight(ROLE1、role2の) role1.wea.fight(ROLE1、role2の)