英雄大乱斗 作业

今日作业

1.什么是对象?什么是类?

​ 对象是特征与技能的结合体;

​ 类是一系列对象相同特征和技能的结合体。

2.绑定方法的有什么特点

​ 绑定给谁就由谁来调用,绑定给类,就是一个普通的函数,该传几个参数就传几个参数;

​ 绑定给对象,会把对象本身当做第一个参数,自动传入。

3.基于面向对象设计一个对战游戏

# 仿制英雄联盟英雄角色
import random
class Hero:
    
    def __init__(self, name, attack, life_value, defend):
        self.name = name
        self.attack = attack
        self.life_value = life_value
        self.defend = defend
        # print(self.__dict__)

    def fight(self, enemy):
        # print(enemy.name)
        # print(enemy.life_value)
        if enemy.life_value <= 0:
            return True
        effect_hurt = random.choice( self.attack) - enemy.defend
        enemy.life_value -= effect_hurt
        print(f'''
            {self.name}攻击了{enemy.name}:
            有效伤害为:{effect_hurt},
            {enemy.name}还剩血量为:{ enemy.life_value}
            ''')
        
h1 = Hero('盖伦', [120,50,300], 1000, 10)
h2 = Hero('瑞文', [100,280,40], 1000, 30)

count=0
while True:
    count+=1
    print(f'第{count}回合:\n')
    flag1 = h1.fight(h2)
    if flag1:
        print(f'第{count}回合 {h2.name}已经挂掉了!')

        break
    flag2 = h2.fight(h1)
    if flag2:
        print(f'第{count}回合{h1.name}已经挂掉了!')
        break

猜你喜欢

转载自www.cnblogs.com/zhangchaocoming/p/11645131.html
今日推荐