python--小游戏(循环+随机)

 1 import time
 2 import random
 3 
 4 player_victory = 0
 5 enemy_victory = 0
 6 a1 = True
 7 while a1: 8 for i in range(1,4): 9 time.sleep(1.5) 10 print(' \n——————现在是第 %s 局——————' % i) 11 #对比之前:(' \n——————现在是第'+str(i)+'局——————') 12 player_life = random.randint(100,150) 13 player_attack = random.randint(30,50) 14 enemy_life = random.randint(100,150) 15 enemy_attack = random.randint(30,50) 16 17 print('【玩家】\n血量:%s\n攻击:%s' % (player_life,player_attack)) 18 print('------------------------') 19 time.sleep(1) 20 print('【敌人】\n血量:%s\n攻击:%s' % (enemy_life,enemy_attack)) 21 print('-----------------------') 22 time.sleep(1) 23 while player_life > 0 and enemy_life > 0: 24 player_life = player_life - enemy_attack 25 enemy_life = enemy_life - player_attack 26 print('你发起了攻击,【敌人】剩余血量%s' % enemy_life) 27 print('敌人向你发起了攻击,【玩家】的血量剩余%s' % player_life) 28 print('-----------------------') 29 time.sleep(1.2) 30 if player_life > 0 and enemy_life <= 0: 31 player_victory += 1 32 print('敌人死翘翘了,你赢了!') 33 elif player_life <= 0 and enemy_life > 0: 34 enemy_victory += 1 35 print('悲催,敌人把你干掉了!') 36 else: 37 print('哎呀,你和敌人同归于尽了!') 38 if player_victory > enemy_victory : 39 time.sleep(1) 40 print('\n【最终结果:你赢了!】') 41 elif enemy_victory > player_victory: 42 print('\n【最终结果:你输了!】') 43 else: 44 print('\n【最终结果:平局!】') 45 input('如不想继续,请输入n:') 46 request = input 47 if request == 'n': 48 break

再来一局的方案有两种:1.通过break   2.通过判断布尔值为true or false进行再次循环或者结束

2.format函数:

 1 # % 格式化:str % ()
 2 print('{}{}'.format('数字:',0))
 3 print('{0},{1}'.format(0,1))
 4 print('{0},{0},{1}'.format(0,1,0))
 5 
 6 name1 = 'Python'
 7 print('I am learning {}'% name1)  # 注:当只跟一个数据时,%后可不加括号,format()一定要有。
 8 
 9 # format()格式化函数:str.format()
10 print('\n{}{}'.format('数字:',0))  # 优势1:不用担心用错类型码。
11 print('{},{}'.format(0,1))  # 不设置指定位置时,默认按顺序对应。
12 print('{1},{0}'.format(0,1))  # 优势2:当设置指定位置时,按指定的对应。
13 print('{0},{1},{0}'.format(0,1))  # 优势3:可多次调用format后的数据。
14 
15 name2 =  'Python基础语法'
16 print('我正在学{}'.format(name2))  # format()函数也接受通过参数传入数据。

不管是‘%’ 格式化输出还是format()格式化输出,其基本语法相似,但format函数更为精简

%s 表示字符串 %d表示整数 %f表示浮点数,而format()不用注意类型

3.range()

range()函数有三种形式:1.range(a)表示,从0开始到a;2.range(a,b)表示,从a开始到b; 3.range(a,b,c)表示从a到b 中间每隔c个数 记一次数,直到b。

range()函数经常用于 for循环语句中

4.延时函数

延时函数与随机生成数函数一致需要模板的引用。

import time   //引用模板

time.sleep(a)//a为延时的secs(间隔秒数 seconds) 

5.随机数函数

import random //引用模板

rabdom.randint(0~9)//在0-9之间任选一个数

猜你喜欢

转载自www.cnblogs.com/boqiang/p/12368581.html