録音Pythonオブジェクト指向プログラミングのアイデア

  初心者のPythonは、プログラミングで、それは、進んで合理的な論理的思考プロセスに従って、良いプログラミング習慣を開発、ここに記録への将来のアクセスを容易にするための方法をステップバイステップでなければなりません。

  例えば、ショット悪役のための

  1.主な機能を定義し、プロセス全体の制御フロー:

  デフメイン():

  「」「制御プログラムの流れに使用されています

  パス

  __name__ == '__main__' の場合:

  メイン()

  2.ビルドフレームワーク。各ステップの主な機能を持つ中国のコメント

  デフメイン():

  #悪役オブジェクトを作成します。1.

  #2。銃のターゲットを作成します。

  #BB爆弾のターゲットを作成します3。

  #4。はBB爆弾のターゲットを作成します。

  5.悪役#bbのbbの爆弾は爆弾に仕込み、

  6.悪役#のBB銃の弾丸を充電

  #7。敵のターゲットを作成します。

  銃アップ#8悪役

  #9。悪役ショットと敵を殺しました

  __name__ == '__main__' の場合:

  メイン()

  3.フレームに沿って構築され、[デザインクラスをクリックして、オブジェクトを作成します

  4.各その後、我々は(広義のフレームワークと同様に)「」「この方法の書き込み機能がやっている」「」コメントだけでなく、どのように書き込みに、どのように達成するためにステップバイ#実現のステップにしなければならない、クラスメソッドを書き、実装プロセスを書き込みます。

  "" "实例" ""

  クラスA:

  デフテスト(自己):

  「」「テスト」「」

  #1は、データを取得します

  XXXXXXXX

  式に#2

  XXXXXXXX

  5.ステップ試験は習慣的であり、後

  #Bbの爆弾テスト情報

  印刷(dan_jia)

  情報テスト銃#

  印刷(ガン・モデル)

  シェルのBbの数は次のとおりです。1/20

  BBガンシェルで

  この人は銃を持っています

  完全なコード

  クラスパーソン():

  "" "人的类" ""

  デフ__init __(自己、名):

  self.name =名前

  ブラッドself.hp = 100#100

  デフadd_bullet(自己、danjia_temp、bullet_temp):

  BB BB爆弾爆弾を追加するには#

  danjia_temp.tianjia_bullet(bullet_temp)

  デフadd_danjia(自己、gun_temp、dan_jia_temp):

  #を追加するには、BB銃の弾丸

  gun_temp.add_danjia(dan_jia_temp)

  デフ(自己、gun_temp)own_gun:

  "" "拿枪" ""

  self.gun = gun_temp

  デフ__str __(自己):

  返す%(self.gun.name)「この人は銃%sのを持っています」

  デフショット(自己、ターゲット):

  「」「」「敵を倒します」

  self.gun.fire(ターゲット)

  デフdiaoxue(自己、shanghai_temp):

  「」「」「IはDiaoxieを襲いました」

  self.hp- = shanghai_temp

  印刷(「敵を打つ、敵の血が残ってた:%d」%のself.hp)

  クラスガン():

  「」「ガンタイプ」「」

  デフ__init __(自己、名):

  self.name =名前

  self.danjia =なし

  デフadd_danjia(自己、dan_jia_temp):

  #Bbのガンシェルがロードされました

  self.danjia = dan_jia_temp

  デフ__str __(自己):

  self.danjia ==なしの場合:

  リターン%(self.name) "%sのBB銃の弾丸はありません"

  そうしないと:

  "箇条書きと%sのBBガン" を返し%(self.name)

  デフ火災(自己、ターゲット):

  「」「BB BB爆弾爆弾から削除した後BB爆弾が敵にヒットしてみましょう。」「」

  BBシェルシェル削除#bb

  zidan_temp = self.danjia.tanchu_bullet()

  Bbが爆弾の#で敵と戦います

  zidan_temp場合:

  zidan_temp.hurt(ターゲット)

  クラスDanJia():

  「」「BB弾クラス」「」

  デフ__init __(自己、MAX_NUMBER):

  self.max_number = MAX_NUMBER #bb発射能力

  現在の弾丸発射BBのself.bullet_list = [] #bb数

  デフtianjia_bullet(自己、bullet_temp):

  「追加BB BB爆弾爆弾」

  self.bullet_list.append(bullet_temp)

  デフ__str __(自己):鄭州ウィメンズ病院http://www.sptdfk.com/

  %(LEN(self.bullet_list)、self.max_number): "%D /%D番号BB爆弾爆弾だったBB" を返します

  デフtanchu_bullet(自己):

  #bb爆弾。ポップBBを爆撃

  self.bullet_list場合:

  リターンself.bullet_list.pop()

  そうしないと:

  (「...残念ながら、BB爆弾はありません」)を印刷

  戻りなし

  クラスの弾丸():

  デフ__init __(自己):

  self.shanghai = 10

  デフ(自己、ターゲットを)傷つけます:

  target.diaoxue(self.shanghai)

  デフメイン():

  #悪役オブジェクトを作成します。1.

  xiaoren =人( "xiaoren")

  #2。銃のターゲットを作成します。

  ガンタイプ=ガン(「モデル」)

  #BB爆弾のターゲットを作成します3。

  dan_jia = DanJia(20)#のプロパティ:BB BBシェルシェルは20を保持することができます

  #4。はBB爆弾のターゲットを作成します。

  弾丸=弾丸()

  ロードされたBBのBB弾を演奏悪役#人

  xiaoren.add_bullet(dan_jia、弾丸)

  6.悪役#のBB銃の弾丸を充電

  xiaoren.add_danjia(ガン・モデル、dan_jia)

  #7。敵のターゲットを作成します。

  enermy =人( "enermy")

  #Bbの爆弾テスト情報

  #印刷(dan_jia)

  情報テスト銃#

  #印刷(ガン・モデル)

  銃アップ#8悪役

  xiaoren.own_gun(ガン・モデル)

  #テストの人々

  #印刷(xiaoren)

  #9。悪役ショットと敵を殺しました

  xiaoren.shot(enermy)

  __name__ == '__main__' の場合:

  メイン()


おすすめ

転載: blog.51cto.com/14503791/2476977