Python—实操小实验之人机PK游戏(终极版本—应用类与对象的知识点应用)
Python—实操小实验之人机PK游戏(终极版本—应用类与对象的知识点应用)
人机PK游戏所需要的基础元素如下:
①要有玩家、敌人、生命值、攻击力,还要有计分;
②要可以互相进行攻击,攻击之后生命值要相应的减少;
③最后依据分数分出胜负结果。
终极版本中:
主要用到的知识点是:将函数进行封装打包,成为类;
不同角色的属性要有所差异,角色之间增加相互克制的类方法;
当玩家输入角色出场顺序时有误,要提醒玩家重新输入;
仍然与初级版本一样,对战,计分,分胜负。
#导入必要的包
import random
import time#创建一个类来实例化具体的游戏角色
class Role():def __init__(self,name):self.name = nameself.life = random.randint(100,150)self.attack = random.randint(30,50)#运用继承创造子类,实例化3个不同的角色类型
class Knight(Role):def __init__(self,name = '【圣光骑士】'):Role.__init__(self,name)self.life = int(self.life*1.5) #对指定角色加属性值self.attack = int(self.attack*0.8)def fight_buff(self,opponent,str1,str2): #设定角色的克制关系if opponent.name =='【暗影刺客】': #如果遇到暗影刺客,那么攻击在原基础上再增加1.5倍self.attack = self.attack*1.5print('{}【圣光骑士】对{}【暗影刺客】有压制作用'.format(str1,str2))class Assassin(Role):def __init__(self,name = '【暗影刺客】'):Role.__init__(self,name)self.life = int(self.life*0.8)self.attack = int(self.attack*1.5)def fight_buff(self,opponent,str1,str2):if opponent.name =='【精灵弩手】':self.attack = self.attack*1.5print('{}【暗影刺客】对{}【精灵弩手】有压制作用'.format(str1,str2))class Bowman(Role):def __init__(self,name = '【精灵弩手】'):Role.__init__(self,name)self.life = int(self.life*1.2)self.attack = int(self.attack*1.2)def fight_buff(self,opponent,str1,str2):if opponent.name =='【圣光骑士】':self.attack = self.attack*
Python—实操小实验之人机PK游戏(终极版本—应用类与对象的知识点应用)相关推荐
- 小马同学 学习python实操的第一天
学习python实操的第一天 第一个实操案例 任务1:向文件输出"一段属于你自己的话" ##方法一 fp= open('d:/test.txt','w') ##open('文件存储 ...
- PSM倾向得分匹配法【python实操篇】
前言 大家好,我是顾先生,PSM倾向性得分匹配法的Python代码实操终于来啦! 对于PSM原理不太熟悉的同学可以看看前一篇文章:PSM倾向得分匹配法[上篇:理论篇] 目前网上PSM实操的相关文章 ...
- RabbitMQ第五个实操小案例——主题交换机(TopicExchange)
文章目录 RabbitMQ第五个实操小案例--主题交换机(TopicExchange) RabbitMQ第五个实操小案例--主题交换机(TopicExchange) TopicExchange 和 D ...
- RabbitMQ第四个实操小案例——DirectExchange
文章目录 RabbitMQ第四个实操小案例--DirectExchange RabbitMQ第四个实操小案例--DirectExchange DirectExchange:这种交换机的模式跟前面的Fo ...
- 【Python 实操】labelImg标注的xml格式转换为yolo的txt文件
[Python 实操]labelImg标注的xml格式转换为yolo的txt文件 背景 YOLO家族开枝散叶(尤其是YOLOv5)的广泛应用就涉及到图像的标注与文件格式转换,常用的标注工具有 Labe ...
- python实操训练300题_如何练习python?有这五个游戏,实操经验就已经够了
原标题:如何练习python?有这五个游戏,实操经验就已经够了 现在学习python的人越来越多了,但仅仅只是学习理论怎么够呢,如何练习python?已经是python初学者比较要学会的技巧了! 其实 ...
- python实操题_Python100道练习题,光看不练假把式,Python实操资源
Python数学计算,编程练习题实例一 Python数轴.长整型,编程练习题实例二 Python完全平方数,编程练习题实例三 Python日期计算,编程练习题实例四 Python整数顺序排列,编程练习 ...
- Python实操模拟题
实操题 1.Redis数据库操作 阅读下列说明及运行结果, 打开"考生文件夹\10002"文件夹中的素材,阅读代码,在空(1)至(10)处填写正确代码,操作完成后保存素材. 该题是 ...
- git按照tag拉取代码_Git实操小课堂
平时也多是使用 IDEA 自带的 Git 插件,简单又方便,不需要理解 Git 背后的技术,最近突然让我在 VsCode 上更新提交代码,发现又需要学习 VsCode 的插件使用,思量一番后,决定好好 ...
最新文章
- jQuery 实现 select模糊查询 反射机制
- deLPHI书籍名称
- 数据结构(十二)动态规划
- 蒙了吗?offsetLeft、offsetWidth、scrollTop、scrollWidth、event.pageX
- mybatis-plus中like的使用说明
- dp----最少硬币问题
- android获取有线、wifi、3G(4G)的IP
- windows查看GPU使用信息
- 第一部分 第四章 1059-1101 答案合集
- 韩顺平Java自学笔记 集合
- excel导入sqlsever
- 品搜妞——百度、谷狗、搜狗的女人三围
- 程序员须学计算机语言,新手程序员需要学什么编程语言
- C语言 日历查询系统 成品
- 第六章 服务熔断器Hystrix
- 华工2018计算机接口技术大作业,2018华工接口技术课后作业
- 给水排水计算机应用课件,计算机在给排水工程中的应用课件.ppt
- 微信第三方平台uni-app配置ext.json
- *.pvr.ccz文件还原成png格式
- python也可以成为贴心小管家--每日播报考研倒计时、天气情况、还有“营养鸡汤”