手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

Python回合制小游戏对战程序

时间:2025-01-07 12:48:40

Python回合制游戏对战小程序,初始随机血量,随机攻击力,回合制互砍,血量为负输一局,三局两胜制,并决出最终结果。

工具/原料

电脑

Python软件

小程序详解

1、新建Python文件

Python回合制小游戏对战程序

2、1)调用time函数以及random函数 import time,random2)定义变量并随机赋值(血量以及攻击力) player_life = random.randint(20,30) player_attack = random.randint(10,15) enemy_life = random.randint(20,30) enemy_attack = random.randint(10,15)

Python回合制小游戏对战程序
Python回合制小游戏对战程序

3、外套for循环,对战三局,三次随机赋值(血量 + 攻击力)for i in range(3):表示0,1,2三次循环,也就是对战三局print('-------现在是第 %s 局-------'%i)表示打印提示局数

Python回合制小游戏对战程序

4、while循环,定义攻击扣血计算逻辑while (player_life)>0 and (enemy_life>0): player_life=player_life-enemy_attack enemy_life=enemy_life-player_attack print('【玩家】\n剩余血量:%s\n攻击%d' % (player_life, player_attack)) print('————————————————') time.sleep(1.5) print('【敌人】\n剩余血量:%s\n攻击%d' % (enemy_life, enemy_attack)) print('————————————————') time.sleep(1.5)只要双方的血量为正,攻击就不断地循环,直至至少一方血量为零

Python回合制小游戏对战程序

5、单局对战,结果判断 :1)结果一:敌人血量先小于0,你赢了2)结果二:你血量先小于0,敌人赢了3)结果三:双方血量同时小于零,同归于尽了 if player_life>0 and enemy_life<0: print('Yeah,you win!') player_victory+=1 elif player_life<0 and enemy_life>0: print('Eenmmh,you false!') enemy_victory+=1 elif player_life<0 and enemy_life<0: print('all false!!')

Python回合制小游戏对战程序

6、回合制,三局两胜,有可能出现先赢了两局的情况,因此当先胜了两局,那么游戏提前结束,附加判断条件如下:if enemy_victory - player_victory>=2 or player_victory - enemy_victory >= 2: break

Python回合制小游戏对战程序

7、回合制,三局两胜,最终结果判断1)你赢了两局,那么你赢了2)敌人赢了两局,那么你输了3)各赢一局,同归于尽一局;或者三局都打和了,那么最终还是打和了 if player_victory>enemy_victory or player_victory-enemy_victory>=2: print('Finally, you win!!') elif player_victory<enemy_victory or enemy_victory-player_victory>=2: print('Finally, you false!!') else: print('What the fuck!!居然打平了!!')注意:单局战斗胜负,变量是有累计的,如图红框所示player_victory=0(初始变量赋值)enemy_victory=0(初始变量赋值)if player_life>0 and enemy_life<0: print('Yeah,you win!') player_victory+=1 #变量累计 elif player_life<0 and enemy_life>0: print('Eenmmh,you false!') enemy_victory+=1 #变量累计 elif player_life<0 and enemy_life<0: print('all false!!')

Python回合制小游戏对战程序
Python回合制小游戏对战程序

8、外套while循环,表示不服气,还可以重新进行,三局两胜战斗:while True:a2 = input('如果要继续,请输入‘y’,如果不需要,请输入其他:')if a2!='y': break

完整小程序代码

1、import time,randomplayer_victory=0enemy_victory=0while True: for i in range(3): print('-------现在是第 %s 局-------'%i) player_life = random.randint(20,30) player_attack = random.randint(10,15) enemy_life = random.randint(20,30) enemy_attack = random.randint(10,15) print('【玩家】\n血量:%s\n攻击%d'%(player_life,player_attack)) print('————————————————') time.sleep(1) print('【敌人】\n血量:%s\n攻击%d'%(enemy_life,enemy_attack)) print('————————————————') time.sleep(1) while (player_life)>0 and (enemy_life>0): player_life=player_life-enemy_attack enemy_life=enemy_life-player_attack print('【玩家】\n剩余血量:%s\n攻击%d' % (player_life, player_attack)) print('————————————————') time.sleep(1.5) print('【敌人】\n剩余血量:%s\n攻击%d' % (enemy_life, enemy_attack)) print('————————————————') time.sleep(1.5) if player_life>0 and enemy_life<0: print('Yeah,you win!') player_victory+=1 elif player_life<0 and enemy_life>0: print('Eenmmh,you false!') enemy_victory+=1 elif player_life<0 and enemy_life<0: print('all false!!') if enemy_victory - player_victory>=2 or player_victory - enemy_victory >= 2: break if player_victory>enemy_victory or player_victory-enemy_victory>=2: print('Finally, you win!!') elif player_victory<enemy_victory or enemy_victory-player_victory>=2: print('Finally, you false!!') else: print('What the fuck!!居然打平了!!') a2 = input('如果要继续,请输入‘y’,如果不需要,请输入其他:') if a2!='y': break

函数战斗结果

1、结果一:三局两胜,最终打和了,并不再进行战斗-------现在是第 0 局-------【玩家】血量:20攻击10————————————————【敌人】血量:25攻击14————————————————【玩家】剩余血量:6攻击10————————————————【敌人】剩余血量:15攻击14————————————————【玩家】剩余血量:-8攻击10————————————————【敌人】剩余血量:5攻击14————————————————Eenmmh,you false!-------现在是第 1 局-------【玩家】血量:22攻击12————————————————【敌人】血量:20攻击13————————————————【玩家】剩余血量:9攻击12————————————————【敌人】剩余血量:8攻击13————————————————【玩家】剩余血量:-4攻击12————————————————【敌人】剩余血量:-4攻击13————————————————all false!!-------现在是第 2 局-------【玩家】血量:30攻击13————————————————【敌人】血量:21攻击11————————————————【玩家】剩余血量:19攻击13————————————————【敌人】剩余血量:8攻击11————————————————【玩家】剩余血量:8攻击13————————————————【敌人】剩余血量:-5攻击11————————————————Yeah,you win!What the fuck!!居然打平了!!

2、结果二:三局两胜,两单局打和,一局你赢,最终你赢了-------现在是第 0 局-------【玩家】血量:27攻击15————————————————【敌人】血量:26攻击10————————————————【玩家】剩余血量:17攻击15————————————————【敌人】剩余血量:11攻击10————————————————【玩家】剩余血量:7攻击15————————————————【敌人】剩余血量:-4攻击10————————————————Yeah,you win!-------现在是第 1 局-------【玩家】血量:21攻击14————————————————【敌人】血量:20攻击13————————————————【玩家】剩余血量:8攻击14————————————————【敌人】剩余血量:6攻击13————————————————【玩家】剩余血量:-5攻击14————————————————【敌人】剩余血量:-8攻击13————————————————all false!!-------现在是第 2 局-------【玩家】血量:22攻击15————————————————【敌人】血量:25攻击13————————————————【玩家】剩余血量:9攻击15————————————————【敌人】剩余血量:10攻击13————————————————【玩家】剩余血量:-4攻击15————————————————【敌人】剩余血量:-5攻击13————————————————all false!!Finally, you win!!如果要继续,请输入‘y’,如果不需要,请输入其他:

3、结果三:第一次三局两胜,你赢了,选择继续战斗,第二次三局两胜制中,居然打和了。-------现在是第 0 局-------【玩家】血量:27攻击15————————————————【敌人】血量:26攻击10————————————————【玩家】剩余血量:17攻击15————————————————【敌人】剩余血量:11攻击10————————————————【玩家】剩余血量:7攻击15————————————————【敌人】剩余血量:-4攻击10————————————————Yeah,you win!-------现在是第 1 局-------【玩家】血量:21攻击14————————————————【敌人】血量:20攻击13————————————————【玩家】剩余血量:8攻击14————————————————【敌人】剩余血量:6攻击13————————————————【玩家】剩余血量:-5攻击14————————————————【敌人】剩余血量:-8攻击13————————————————all false!!-------现在是第 2 局-------【玩家】血量:22攻击15————————————————【敌人】血量:25攻击13————————————————【玩家】剩余血量:9攻击15————————————————【敌人】剩余血量:10攻击13————————————————【玩家】剩余血量:-4攻击15————————————————【敌人】剩余血量:-5攻击13————————————————all false!!Finally, you win!!如果要继续,请输入‘y’,如果不需要,请输入其他:y-------现在是第 0 局-------【玩家】血量:25攻击12————————————————【敌人】血量:24攻击14————————————————【玩家】剩余血量:11攻击12————————————————【敌人】剩余血量:12攻击14————————————————【玩家】剩余血量:-3攻击12————————————————【敌人】剩余血量:0攻击14————————————————-------现在是第 1 局-------【玩家】血量:21攻击15————————————————【敌人】血量:26攻击15————————————————【玩家】剩余血量:6攻击15————————————————【敌人】剩余血量:11攻击15————————————————【玩家】剩余血量:-9攻击15————————————————【敌人】剩余血量:-4攻击15————————————————all false!!-------现在是第 2 局-------【玩家】血量:20攻击10————————————————【敌人】血量:22攻击14————————————————【玩家】剩余血量:6攻击10————————————————【敌人】剩余血量:12攻击14————————————————【玩家】剩余血量:-8攻击10————————————————【敌人】剩余血量:2攻击14————————————————Eenmmh,you false!What the fuck!!居然打平了!!如果要继续,请输入‘y’,如果不需要,请输入其他:

© 手抄报圈