zoukankan      html  css  js  c++  java
  • 1009 作业

    1009作业

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

    对象:是一系列方法与特征的集合体,python中万物皆对象

    类: 具有一系列相同特征的对象的结合体

    2.绑定方法有什么特点

    类内部的函数主要是由对象引用

    1. 当类调用类中函数时,函数是普通的函数,需传值
    2. 当对象来调用类中函数时,称之为对象的绑定方法

    会把对象当做参数传入该绑定方法中

    不同的对象调用该方法,将不同的对象传入该绑定方法

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

    '''定义英雄'''
    class yasuo:
        def __init__(self, name,
                     aggr=54,
                     life=414,
                     money=6300,
                     armor=60):
            self.name = name    # 你的游戏id
            self.aggr = aggr    # 攻击力
            self.life = life    # 血量
            self.money = money  # 售价
            self.armor = armor   # 护甲
    
        def skill(self,enemy):  # 定义攻击技能,enemy是敌人
            vaild_aggr = self.aggr - enemy.armor  # 有效伤害 = 攻击力减护甲
            if enemy.life <= 0:
                return True
            enemy.life -= vaild_aggr
            print(f'''
            {r2.name}攻击{r1.name}
            {r1.name}受到{r1.aggr}伤害
            {r1.name}还有{r1.life}血量
            ''')
    
    class timo:
        def __init__(self, name,
                     aggr=44,
                     life=400,
                     money=450,
                     armor=40):
            self.name = name
            self.aggr = aggr
            self.life = life
            self.money = money
            self.armor = armor
    
        def skill(self,enemy): # 定义攻击技能,enemy是敌人
            vaild_aggr = self.aggr - enemy.armor  # 有效伤害 = 攻击力减护甲
            enemy.life -= vaild_aggr
            if enemy.life <= 0:
                return True
            print(f'''
            {r1.name}攻击{r2.name}
            {r2.name}受到{r1.aggr}伤害
            {r2.name}还有{r2.life}血量
            ''')
    
    
    
    '''交互'''
    r1 = yasuo('淡淡的悲哀')
    r2 = timo('火之高兴')
    while True:
    
        flag =r1.skill(r2)  # 将r2传入ri.skill中得到返回值
        if flag:
            print(f'用户{r2.name}阵亡')
            break   # 如果为真,则生命值为零,结束循环
    
        flag = r2.skill(r1)    # 否则继续执行
        if flag:
            print(f'用户{r2.name}阵亡')
            break
    
  • 相关阅读:
    mybatis集成spring
    静态代码块-普通代码块-构造代码块(好多图)
    Mybatis generator(复制粘贴完成)
    委派模式和适配器模式
    mysq--索引模块
    谈谈TCP的四次挥手
    说说TCP的三次握手
    网络基础知识
    java的IO机制
    std::bind接口与实现
  • 原文地址:https://www.cnblogs.com/fwzzz/p/11644602.html
Copyright © 2011-2022 走看看