zoukankan      html  css  js  c++  java
  • python class类的属性应用及init初始化实践 ---勇者斗恶龙

      最近在熟悉python的基础语法,刚好老师布置了个课后作业感觉挺有意思的,就记录下来了学习过程。

    题目如下:

    刚拿到题目就想到了init 初始化属性,还列了下思路:(ps:notepad++写的比较糙)

     最终成品就长这样,编码的时候还遇到用A的攻击攻击A的情况,后来修正了一波,勉强算是符合老师的要求了。里面的数据没考虑合理性, 有软测的可以帮忙跑跑找找bug。也欢迎完善指正~~

     1 #!/usr/bin/python3
     2 # -*- coding: utf-8 -*-
     3 # @Time    : 2020/4/11:13:51
     4 # @Author  : 翼风语
     5 
     6 import random
     7 class hero():
     8     def __init__(self, hp, ap, wq=0):
     9         '''
    10         set default param
    11         :param hp: 生命
    12         :param ap: 攻击
    13         :param wq: 武器伤害
    14         '''
    15         self.hp = hp
    16         self.ap = ap
    17         self.wq = wq
    18 
    19     def hurt(self,value):
    20         self.hp = self.hp - value
    21         print("勇者受到了 "+str(value)+" 点伤害,生命还有"+str(self.hp))
    22         if(self.hp <= 0):
    23             print("一切都是命中注定,是否卷土重来?")
    24             raise
    25 
    26 class dinosaur():
    27     def __init__(self, hp, ap):
    28         """
    29         set default param
    30         :param hp:
    31         :param ap:
    32         """
    33         self.hp = hp
    34         self.ap = ap
    35     def hurt(self,value):
    36         self.hp = self.hp - value
    37         print("恶龙受到了 "+str(value)+" 点伤害,生命还有"+str(self.hp))
    38         if(self.hp <= 0):
    39             print("恭喜你完成了‘世界和平’任务")
    40             raise
    41 
    42 if __name__ == "__main__":
    43     su = hero(200,10,25)
    44     mk = dinosaur(1000,3)
    45     n = 1
    46     while True:
    47         i = random.randint(0,5) # 伤害上限高
    48         j = random.randint(1,3) # 输出比较稳
    49         try:
    50             print("-------round:%s------" % str(n))
    51             su.hurt(i+mk.ap)
    52             mk.hurt(j+su.ap+su.wq)
    53             n= n+1
    54         except:
    55             break

       最后贴上执行效果图:在第二十七回合 --世界和平了

         

  • 相关阅读:
    [HDOJ3523]Image copy detection
    [HDOJ3526]Computer Assembling
    Ubuntu12.04 配置步骤
    const 详解
    ubuntu 12.04 源
    函数参数和数据成员同名
    友元
    静态数据 成员和静态函数
    成员指针
    内存泄露
  • 原文地址:https://www.cnblogs.com/yifengyu/p/12679941.html
Copyright © 2011-2022 走看看