パイソン - オブジェクト指向データベース(クラス、オブジェクト、クエリー配列、組成物)

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の)

 

おすすめ

転載: www.cnblogs.com/jiujiang/p/11184351.html