# 项目实训  人狗大战
# 多个人 多条狗 多个属性 名字 种类 攻击力 生命力进行设值
# 先创狗
#数据太多了 依次复制太过复杂 这时候就可以写一个def然后整体调用更改数据即可attack_vals={"哈士奇":5,"金毛":10,"藏獒":40
}def person(name,age):data={"name":name,"age":age,"d_type":"人类","life_val":999999999,}if age>18:data["attack_val"]=500#添加值进字典else:data["attack_val"]=300return data
x1=person("雷云腾",19)
x2=person("杜俊枫",17)def dog_bite(dog_obj,person_obj):person_obj['life_val']-=dog_obj['attack_val']#执行咬人的动作print("狗[%s]咬了人[%s]一口,人掉血[%s],还剩下[%s]血量...." %(dog_obj['name'],person_obj["name"],dog_obj['attack_val'],person_obj['life_val']))def person_beat(person_obj,dog_obj):dog_obj['life_val']-=person_obj['attack_val']print("人[%s]暴打一只小狗狗[%s]一棒,小狗掉血[%s],还剩下[%s]血量....."%(person_obj['name'],dog_obj['name'],person_obj['attack_val'],dog_obj['life_val']))def dog(name,d_type):Data = {"name": name,#传参"d_type": d_type,"attack_val":30,"life_val":100}if d_type in attack_vals:Data["attack_val"]=attack_vals[d_type]else:Data["attack_val"]=12return Datad1=dog("余星舟","哈士奇")#赋值
d2=dog("张力文","金毛")
d3=dog("刘江","藏獒")
d4=dog("李盟原","边牧")
d5=dog("肖瑞丰","香肠狗")
d6=dog("李锐鑫","西伯利亚犬")
dog_bite(d1,x1)
dog_bite(d2,x1)
dog_bite(d3,x2)
dog_bite(d5,x2)
dog_bite(d6,x1)
person_beat(x1,d1)
person_beat(x1,d2)
person_beat(x1,d4)
person_beat(x2,d3)
person_beat(x2,d5)



Python面向对象游戏--人狗大战相关推荐

  1. 2018.11.19-day21 初识面向对象 VS 人狗大战

    1.初识面向对象 2.人狗大战 转载于:https://www.cnblogs.com/studybrother/p/9985814.html

  2. python人狗大战游戏_day23 python学习 类 人狗大战

    面向过程 VS 面向对象 面向过程的程序设计的核心是过程(流水线式思维),过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西. 面向过程 优点是:极大的降低了 ...

  3. python开发之旅——面向对象【人狗大战】

    class Dog:role = 'Dog'def __init__(self,name,breed,attack_val):self.name = nameself.breed = breedsel ...

  4. python人狗大战游戏_day22 01 初识面向对象----简单的人狗大战小游戏

    day22 01 初识面向对象----简单的人狗大战小游戏 假设有一个简单的小游戏:人狗大战   怎样用代码去实现呢? 首先得有任何狗这两个角色,并且每个角色都有他们自己的一些属性,比如任务名字nam ...

  5. Python 面向对象--人狗大战(教程)

    可参考代码来方便学习 Python 面向对象--人狗大战(代码)_菜菜啾咪的博客-CSDN博客https://blog.csdn.net/hexiaan/article/details/1257225 ...

  6. python小白自学基础知识(二)附加(人狗大战游戏)

    python小白自学基础知识(二) 1.计算列表内数字的累加和 这里用到functools模块,以及该模块下的reduce函数 语法:reduce(function1,list1) 注:functio ...

  7. python开发面向对象基础:人狗大战学面向对象

    一,通过函数写人狗大战这个故事 1 #!/usr/bin/env python 2 #_*_coding:utf-8_*_ 3 4 #1.函数 人模子 5 def person(name,level, ...

  8. 使用面向对象思想,实现(人狗大战)小游戏

    学习面向对象之后,练习使用面向对象思想,实现代码 ⼈狗⼤站,2个⻆⾊,⼈和狗,游戏开始后,⽣成2个⼈,3条狗,互相混战,⼈被狗咬了会掉⾎,狗被⼈打了也掉⾎,狗和⼈的攻击⼒,具备的 功能都不⼀样. 类: ...

  9. Python 面向对象--人狗大战(代码)

    项目实训 人狗大战 多个人,多条狗,多个品种,年龄,攻击力 attack_vals = {"二哈":20,"藏獒":70,"金毛":40 } ...

最新文章

  1. 2021天津高考成绩查询时间26号几点,2021年天津高考成绩查询时间安排 什么时候出分...
  2. ML之SVM:SVM算法的简介、应用、经典案例之详细攻略
  3. SQL Server 2016 RC0 安装(超多图)
  4. Linux版APP超级签名分发系统源码
  5. Eclipse环境下 spring MVC 入门实例
  6. 微信秘笈之--微信多开
  7. office2010每次打开总是出现配置进度
  8. 分式求二阶导数_第12讲 典型例题与练习参考解答:导数的基本运算法则与高阶导数...
  9. lucene 学习笔记之飞龙在天
  10. Web前端下载文件的几种常见方式
  11. Pycharm如何将项目部署到树莓派上?
  12. 【学习笔记】C++ GUI Qt4 第六章 6.4 滚动区域 和 6.5 停靠窗口和工具栏
  13. 清理Win10系统C盘的脚本方法
  14. linux认证在哪考试,2017年Linux认证考试练习题
  15. 漫步最优化五——可行域
  16. 1024: 大小写转换(C语言)
  17. nrf52832 TWI/I2C 调试
  18. oracle判断字符串以什么开头_oracle 如何查找特定字母开头的某个字段?
  19. 电子废弃物俗称“电子垃圾”,回收怎么处理
  20. linux硬盘分区(fdisk、lsblk)-------------------基础命令练习(一)

热门文章

  1. 生成对抗网络(Generative Adversial Network,GAN)原理简介
  2. 不懂锤爆我系列之Tensorflow入门学习—— 张量扩展函数tile()详解
  3. 简单实用思维导图模板分享
  4. getStoreStorage fail
  5. php系统一直重新安装,系统重装失败无法进入系统怎么办
  6. 服用益生菌多久可以见效?益生菌能提高抵抗力吗?
  7. K210通过继电器控制电磁锁实验
  8. [翻译] [Overleaf] LaTeX 中的粗体、斜体、下划线
  9. 基于FPGA的FFT变换
  10. 夏日里的清新——南锣鼓巷的北京女孩儿们[原创街拍]