风变python基础语法第七关作业_【风变编程】第7关学习笔记及代码扩展

第七关的重点知识点函数为(计时属性)time模块和(随机属性)random模块

通过前面几关的学习,我们脑海中定然是有了以下这些函数的用法:

列表、字典、for循环、while循环以及 if 函数、input函数

那么,既然是第七关了,以上函数必定是都会用到的。

所以,我们先来看最简单的重复利用来运行一个简单的重复pk游戏。

这里用到的就是for循环,简单2次循环下的print运行:

了解了大概的游戏循环形式,接下来咱们就开始来了解time模块和random模块的作用:

#time 模块

计时器import time #调用time模块

time.sleep()

#time.sleep相当于休眠,()里填上任意数字

#然后将time.sleep()放到你要休眠的代码下即可

#示例

import timeprint('我很好')

time.sleep(2)

print('我也很棒!')

#打印出来后会发现在我很好后会停顿大概2秒再打印我也很棒

#random 模块

随机抽取import random

# 同样调用random模块,import是打开的意思。

random.randint(a,b) # 随机在a 到 b中生成数字

#示例

import random

number=random.randint(5,7)

print(number)

>>> 5 6 7 #随机生成

#除此之外,random还有以下两个用法

#random.random() #用于生成一个0到1之间的随机符点数(注意不包含0和1)

import random

a=random.random()

print(a)

>>>0.9792289565726476

#random.uniform(a,b)

#用于生成一个(a,b)之间的浮点数

import random

a=random.uniform(10,15)

print(a)

>>>10.500775002432427

知道了Time和Random用法后,在原有的for循环上加进time和random,这里记得要赋值了,因为random是随机的,不能再用print直接打印。

最难一点来了!!!!

while True + break 定义三局结束分出胜负后,询问你是否还要继续。

看代码!看代码!看代码!

import time,random #调用time和random模块

my_win = 0 #加个空房间用来计分 把它当作0:0的记分牌you_win = 0 #方便后面计算输赢

while True:

end= input('请问继续游戏还是退出游戏') #input互动

if end == '继续':

#如果输入继续,新一轮开始

print('新一轮pk开始') for i in range(4):

#定义每一轮的游戏为三局 time.sleep(1) #间隔时间

print('--------NO.'+str(i)'-------') time.sleep(2)

print('--------------------------')

my_life = random.randint(100,150) my_attack = random.randint(30,50) #随机生成数字

you_life = random.randint(100,150) you_attack = random.randint(30,50)

# 展示双方角色的属性

print('【我】\n'+'生命值:'+str(my_life)+'\n攻击:'+str(my_attack))

print('-------------------------') time.sleep(1)

print('【你】\n'+'生命值:'+str(you_life)+'\n攻击:'+str(you_attack))

print('---------------------------') time.sleep(1)

while my_life > 0 and you_life <0 : my_life = my_life - you_attack #重新赋值,定义pk后的生命值

you_life = you_life - my_attack

print('我发起了攻击,你的生命值还剩'+str(you_life))

print('你发起了攻击,我的生命值还剩'+str(my_life)) print('===========================')

#打印最终战果

if my_life > 0 and you_life <= 0:

my_win +=1 #我赢就加一分

print('敌人死翘翘了,你赢了!')

elif my_life <= 0 and you_life > 0: you_win +=1

print('悲催,敌人把你干掉了!') else:

print('哎呀,你和敌人同归于尽了!')

if my_win > you_win: time.sleep(1.5)

print('行吧,最后还是你赢了')

elif you_win>my_win: print('最后你输了')

else:

print('最后平局')

if end=='退出': #注意缩进!

#返回最开始的询问,输入的是退出,会自动再来一句后直接结束整个游戏

break

划重点!

一定要注意代码的 缩进!缩进!缩进!

尤其是嵌套函数中一层套一层的缩进!

时刻牢记 缩进字符!

小技巧:代码很简单,关键在你能不能先用汉语构建一个框架,当你用汉语把一个小游戏写出来后,再分别套入相关的函数代码,就会容易很多。

举个简单的例子:

1、游戏循环三遍,有限循环用for循环

2、需要两个人,你的生命值和攻击是多少,我的生命值和攻击是多少

3、直接打印,打印中输入手动计算出的生命值,直到为0

把这个例子对应到最开始的for循环中,你看看是不是会更容易理解

扫码关注公众号【桥南有料】

内含风变的学习笔记,并且也会持续更新学习笔记和心得,目前已更新到第8关!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值