Python 语言 写个街头格斗出现错误该怎么解决?

问答 妞妞 ⋅ 于 2019-05-24 17:02:43 ⋅ 最后回复由 青牛 2019-05-24 17:33:57 ⋅ 1610 阅读

import random # 导入random模块

import time # 导入定时器, 本节程序代码使用定时器来实现倒计时效果

'''

下文中的strategies 使用直接定义法来定义一个列表,保存系统随机出的格斗策略

'''

strategies = ["原地蹲防", "失误", "暴血连段", "失误", "伤害修正", "鬼步","失误", "波升", "回血", "必杀"]

chunli_kungfu = ["气功拳", "旋转踢", "百裂脚", "霸山天升脚"]

def main():

'''

:return:void

'''

fighter = 100 # 定义整型变量fighter,用来保存街霸维的血量

chunli = 100 # 定义整型变量chunli,用来保存春丽的血量

对战倒计时

print("3")

time.sleep(1)

print("2")

time.sleep(1)

print("1")

time.sleep(0.2)

print("fight")

while True: # 循环语句,不断重复执行下面的代码

if fighter <= 0 or chunli <= 0: # 春丽或boos其中一人血量为0时就退出战斗

break

执行input函数获得键盘的输入内容

kungfu = input("\n#- -输入以下数字指令来挑战街霸维加:\n<0>气功拳 <1>旋转踢 <2>百裂脚 <3>霸山天升脚\n")

kungfu = int(kungfu) # 对输入的字符串类型转换为整形,读者在输入时必须输入有效的数字,否侧会抛出异常

对于异常的处理,笔者会在后续的教程中进行介绍

is_valid_attack = True # 定义布尔类型变量is_valid_attack 用来判断春丽是否采取了有效个攻击

if kungfu >= 0 and kungfu <=4:

print("你对街霸使出了{}".format(chunli_kungfu[kungfu]))

else:

is_valid_attack = False # 输入的指令错误,攻击无效

print("春丽,这是在战斗,请输入正确的战斗指令!")

strategy = random.chioce(strategies) # 使用random模块中的chioce函数,来随机选择列表里的值

if strategy == "失误":

print("街霸在对战中反击失误!")

else:

print("街霸在对战中对你使用了{}".format(strategy))

time.sleep(2)

if strategy in ["原地蹲防", "回血", "鬼步"]: # 使用in运算符来查找strategy是否在列表中的值

if strategy == "回血" and fighter <100:

fighter += 5

elif strategy == "失误" and is_valid_attack:

fighter -= 10 # 复合运算符

elif strategy == "伤害修正":

fighter -= 5 # 复合运算符

elif strategy == "必杀":

chunli -= 20 # 复合运算符

else:

chunli -= 10

print("\n-- 春丽现在的血量:{0} 维加现在的血量:{1} --".format(chunli, fighter))

if chunli <= 0:

print("春丽,你战败了!")

else:

print("维加,我今天终于把你打败,父亲泉下有知,可以瞑目了!")

if name == "main":

main()
file

成为第一个点赞的人吧 :bowtie:
回复数量: 1
  • 青牛 国内首批大数据从业者,就职于金山,担任大数据团队核心研发工程师
    2019-05-24 17:33:57

    改代码 random.choices

暂无评论~~
  • 请注意单词拼写,以及中英文排版,参考此页
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`, 更多语法请见这里 Markdown 语法
  • 支持表情,可用Emoji的自动补全, 在输入的时候只需要 ":" 就可以自动提示了 :metal: :point_right: 表情列表 :star: :sparkles:
  • 上传图片, 支持拖拽和剪切板黏贴上传, 格式限制 - jpg, png, gif,教程
  • 发布框支持本地存储功能,会在内容变更时保存,「提交」按钮点击时清空
Ctrl+Enter