python从入门到精通--------第一个练习--------
第一个项目所使用的知识点,
print()
where循环
for循环和range
seep函数
random(随机生成整数)
if与else与elif
\n 换行
在练习第一个小项目之前,我们需要学习几个新的函数
1.range()range是进行可规定次数的循环
让个有三种形式:
如图
2.seep函数
作用,seep是让打印的速度变得可以控制
import time print('hhhh') time.sleep(2) print("??")
3.random(随机生成整数)
import random s1=random.randint(30,100)#random.randint(a,b)表示在(a,b)的范围内随机生成一个数 print(s1)
现在让我们开始做第一个项目吧
任务:做一个这样的人机PK小游戏,并且可以循环4次
具体情况如下面的动图
是不是感觉无从下手呢?
不慌,我们可以一步步来
1.先用print()来制作
如图
print('【玩家】\n血量:100\n攻击:50')#自定义血量和攻击 print('----------------')#辅助功能 print('【敌人】\n血量:100\n 攻击:30')#自定义血量和攻击 print('-------------------------') print('你发起了攻击,【敌人】剩余血量50') #玩家攻击敌人血量100-50=50 print('敌人想你发起了攻击,【玩家】剩余血量70')#敌人攻击玩家血量100-30=70 print('----------------------------') print('你发起了攻击,【敌人】剩余血量0') print('敌人发起了攻击,【玩家】剩余血量40') print('----------------------------') print('敌人死了,起飞,我起飞了')
但是这样感觉有点now呀!
而且一点也不自动化?(而且敌人一定打不过你,有黑幕)
当然,这只是给你用来练手的
2.随机的数据和间隔的时间
现在我们就会用到sleep和retrun了
import random import time a=random.randint(10,100)#玩家攻击 b=random.randint(10,50)#敌人攻击 c=random.randint(50,100)#玩家血量 d=random.randint(50,100)#敌人血量 print('【玩家】\n+血量:'+str(c)+'【玩家】\n+攻击:'+str(a)) print('【敌人】\n血量:'+str(b)+'\n 攻击:'+str(d)) print('----------------') time.sleep(2) print('你发起了攻击,【敌人】剩余血量:'+str(d)) print('敌人想你发起了攻击,【玩家】剩余:'+str(c)) print('----------------------------') time.sleep(2) print('你发起了攻击,【敌人】剩余血量:'+str(c)) print('敌人发起了攻击,【玩家】剩余血量:'+str(d)) print('----------------------------') time.sleep(2) print('敌人死了,起飞,我起飞了')
但是不是要进行3局吗?那我应该怎么办呢?
简单,我们可以使用for循环和range
for i in range(1,4):
我们可以发现,有好几行都是重复出现的结构,除了数字是灵活变动之外,其余是一毛一样的。
所以我们可以使用where循环来进行操作
while c > 0 and d > 0:c = c-bd = d-aprint('你发起了攻击,【敌人】剩余血量:' + str(d))print('敌人想你发起了攻击,【玩家】剩余:' + str(c))print('----------------------------')time.sleep(2)
现在我们就差一小局的结果和总结果了
#一小局的结果if d<0 and c>=0:print('恭喜你赢了,芜湖起飞')c+=1elif d>=0 and c<0:print('我这波在第5程')d+=1else:print('一换一不亏') #最终结果 if c>d:print('选皮肤了,芜湖,起飞') elif d>c:print('我自闭了') else:print('放战歌,然我们期待假赛吧!')
最后把上面所使用的加起来就可以得到最后的结果了
import random import time c=0 d=0 for i in range(1,4):time.sleep(2)print('\n-----现在是第'+str(i)+'局,go,go,go!-----') #1玩家和敌人的随机属性a=random.randint(10,100)#玩家攻击b=random.randint(10,50)#敌人攻击c=random.randint(50,100)#玩家血量d=random.randint(50,100)#敌人血量print('【玩家】\n+血量:'+str(c)+'【玩家】\n+攻击:'+str(a))print('----------------')time.sleep(2)print('【敌人】\n血量:'+str(b)+'\n 攻击:'+str(d))print('------------------')time.sleep(2) #对抗开始while c > 0 and d > 0:c = c-bd = d-aprint('你发起了攻击,【敌人】剩余血量:' + str(d))print('敌人想你发起了攻击,【玩家】剩余:' + str(c))print('----------------------------')time.sleep(2)#一小局的结果if d<0 and c>=0:print('恭喜你赢了,芜湖起飞')c+=1elif d>=0 and c<0:print('我这波在第5程')d+=1else:print('一换一不亏') #最终结果 if c>d:print('选皮肤了,芜湖,起飞') elif d>c:print('我自闭了') else:print('放战歌,然我们期待假赛吧!')
python从入门到精通--------第一个练习--------相关推荐
- Python实战入门到精通第一讲——函数
1. 定义函数 def function():print("Hello,World.")returna = function() print(a) 输出: Hello,World. ...
- Python从入门到精通 - 入门篇 (下)
上一讲回顾:Python从入门到精通 - 入门篇 (上) 接着上篇继续后面两个章节,函数和解析式. 4 函数 Python 里函数太重要了 (说的好像在别的语言中函数不重要似的).函数的通用好处就不用 ...
- Python 从入门到精通:一个月就够了?真的能行嘛?
毫无疑问,Python 是当下最火的编程语言之一.对于许多未曾涉足计算机编程的领域「小白」来说,深入地掌握 Python 看似是一件十分困难的事.其实,只要掌握了科学的学习方法并制定了合理的学习计划, ...
- python从入门到精通pdf百度云下载-跟老齐学Python从入门到精通 电子版(pdf格式)...
跟老齐学python从入门到精通是一款由老齐写作的Python电子书籍.书籍讲述了零基础读者的Python入门教程,内容涵盖了Python的基础知识和初步应用,需要的赶紧在巴士下载站下载吧! 目录: ...
- python视频教程从入门到精通全集-python从入门到精通视频(全60集)免费高速下载...
Python是一种面向对象.解释型计算机程序设计语言,由 Guido van Rossum 于1989年底发明,第一个公开发行版发行于1991年,Python 源代码同样遵循 GPL(GNU Gene ...
- python从入门到精通视频教程百度云-python从入门到精通视频教程百度云资源
python从入门到精通视频教程百度云资源来源 : 华清远见 2019-05-24 随着新技术的不断推进,在未来无论我们是要进入网页开发.数据分析.机器学习.人工智能还是无人车云计算等领域,Pytho ...
- python从入门到精通怎么样-Python 从入门到精通:一个月就够了
毫无疑问,Python 是当下最火的编程语言之一.对于许多未曾涉足计算机编程的领域「小白」来说,深入地掌握 Python 看似是一件十分困难的事.其实,只要掌握了科学的学习方法并制定了合理的学习计划, ...
- python自学时间-Python 从入门到精通:一个月就够了!
原标题:Python 从入门到精通:一个月就够了! 毫无疑问,Python 是当下最火的编程语言之一.对于许多未曾涉足计算机编程的领域「小白」来说,深入地掌握 Python 看似是一件十分困难的事.其 ...
- python基础一入门必备知识-Python从入门到精通要掌握哪些基础知识?
Python从入门到精通要掌握哪些Python基础知识?Python作为一门编程语言,已经发展了近三十年,近几年,随着人工智能时代的来临分不开,python人才已经成为一线互联网企业的青睐的对象,Py ...
最新文章
- 世界顶级AI大神综述深度学习
- (转)创业的注意事项
- 【经验】对“面试造火箭,入职拧螺钉”的看法
- Python之字典类型数据常见操作及排序
- UVA 11210 Chinese Mahjong
- php 安装redis扩展
- 关于如何让cell一直保持选中?
- android+rom+bootloader+flash,Android ROM开发(4) bootloader 三种启动模式
- maven实现多模块热部署
- 互联网环境下分布式事务处理系统现状与趋势
- Linux之date命令
- CVE-2017-8046 复现与分析
- bmi计算器公式_bmi计算器免费版客户端
- 数据库系统设计大作业:图书馆管理系统
- 二、安装配置java和hadoop程序
- 系统架构设计师-软件架构设计
- Android Studio下拉菜单
- 学习opengl之为立方体六个面贴上不同的纹理图片
- 有符号数与无符号数的除法(转载)
- 联通大数据携U10峰会而来……