第十九天作业
今日作业
1.什么是对象?什么是类?
对象是一系列特征和技能的结合体,类是一系列相同特征和技能的对象的结合体
2.绑定方法的有什么特点
绑定方法是定义在类内部的函数,这个函数自带一个self参数,这个self参数是用来接收对象的,当类直接调用这个函数时,它就只是一个普通函数,需要给这个self传值,当对象来调用这个函数时,这个函数就是绑定方法,这个self会自动接收到对象(哪个对象调用,接收的就是哪个对象),也就不需要给self传值
3.基于面向对象设计一个对战游戏
class hero:
def __init__(self,name,atk,life,defence ):
self.name = name
self.atk = atk
self.life = life
self.defence = defence
def attack(self,enemy):
damage = self.atk - enemy.defence
enemy.life -= damage
print(f'{self.name}对{enemy.name}造成了{damage}点伤害')
# class hero2:
# def __init__(self,atk = 100,life = 2200,defence = 100):
# self.atk = atk
# self.life = life
# self.defence = defence
# def attack(self,enemy):
# damage = self.atk - enemy.defence
# enemy.life -= damage
yas = hero('yas',150,1800,60)
san = hero('san',90,2200,110)
while True:
if yas.life >0 and san.life>0:
yas.attack(san)
san.attack(yas)
elif yas.life > 0 and san.life <= 0:
print('yas获胜')
break
elif yas.life <= 0 and san.life > 0:
print('san获胜')
break
本来想定义两个英雄类,但是发现这两个类除了属性,其他的都是一样的,所以就只定义了一个英雄类,从这个类中制造了两个对象。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 智能桌面机器人:用.NET IoT库控制舵机并多方法播放表情
· Linux glibc自带哈希表的用例及性能测试
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 手把手教你在本地部署DeepSeek R1,搭建web-ui ,建议收藏!
· 新年开篇:在本地部署DeepSeek大模型实现联网增强的AI应用
· Janus Pro:DeepSeek 开源革新,多模态 AI 的未来
· 互联网不景气了那就玩玩嵌入式吧,用纯.NET开发并制作一个智能桌面机器人(三):用.NET IoT库
· 【非技术】说说2024年我都干了些啥