前言:这是我因为结课要交项目写的一个小游戏,我本身非常不喜欢写注释,因为我自己写的代码我自己一定会看得懂和记得住,所以本文没什么注释。

简介:基于python基本语法编写的,玩家通过猜测电脑投掷的三枚骰子总点数之和的范围,跟电脑进行比赛pk。玩家可以在对局开始前通过修改 max_time 设定对局次数,对局结束后在界面得到完整的对局情况和比赛结果。同时玩家可以通过修改 hard 提高游戏难度。(玩家输入会更完善)

知识点:if语句 / while语句 / for迭代 / ljust / center

代码:这里放的是拆解后的代码

① 年龄判断和初始金额分配:

hard = 0  # int( random.randint(1, 50) ) 注释内是另一个游戏难度
if player_information["player_age"] < 18:print("\n\t\t未满18岁不能进入本游戏哦 o(* ̄▽ ̄*)ブ ~")sys.exit(0)
elif 18 <= player_information["player_age"] <= 30:money = 100 + hard
else:money = 300 + hard
player_information["money"] = money
print("{}您好,欢迎进入本游戏,您的初始金额为:{}\n".format(player_information["player_name"], player_information["money"]))

② 游戏说明:ljust和center嵌套使用 (可以分开,但我喜欢写在一起)

print("*".center(50, "*"))
print("!".ljust(48), "!")
print("!".ljust(14), "游戏说明".center(14, "*") .ljust(31),"!" )
print("!".ljust(6), "电脑每次投掷三枚骰子,总点数<10为小,反之为大".center(20, "*") .ljust(30),"!" )
print("!".ljust(7), "玩家猜大或猜小,猜中金额+10,猜错金额-10".center(20, "*") .ljust(31),"!" )
print("!".ljust(48), "!")
print("*".center(50, "*"))
print("\n")

③ 骰子投掷并计算点数总和:

dices = []for i in range(0, 3):dices.append(random.randint(1, 6))total = sum(dices) 

④ 比赛PK:

player_input = input("请输入 大(big) or 小(small) : ")if (total >= 10 and p_input == "big") or (total < 10 and p_input == "small"):player_information["money"] += 10print("\t骰子点数为:{0},点数总数为:{1}".format(dices,total))print("\t恭喜您取得本次胜利!!! 金额+10  \^o^/ ")elif (total >= 10 and p_input == "small") or (total < 10 and p_input == "big"):win_time = 0player_information["money"] -= 10;print("\t骰子点数为:{}".format(dices))print("\t哦吼,您输了,再接再厉!!! 金额-10  T_T ")lose_time += 1else:print("\t输入错误,请重新进入游戏  ′⌒` ")sys.exit(0)

⑤ 道具使用:连赢三次触发

 multi = 1if win_time % 3 == 0:if len(player_properties) > 0:  # 如果玩家有道具 选择是否使用道具use_pro = input("请问是否使用道具 是(yes) or 否(no): ")if use_pro.lower() == "yes":use_pro = str(input("\t请选择所使用的道具编号:{}".format(properties)))use_pro_count -= 1if use_pro == "a":if use_pro_a > 0:multi = 3use_pro_a -= 1player_properties.remove(player_properties[use_pro_a])print("\t您的金额增加30,a类道具剩余{}个".format(use_pro_a))else:rint("\t您的a类道具不足,请及时购买")elif use_pro == "b":if use_pro_b > 0:multi = random.randint(1, 5)use_pro_b -= 1player_properties.remove(player_properties[use_pro_b])print("\t您的金额增加{0},b类道具剩余{1}个".format(10 * int(multi),use_pro_b))else :print("\t您的b类道具不足,请及时购买")else:print("\t输入错误,本店没有该道具,您失去了这次机会,下次注意哦  ●'◡'● ")elif use_pro.lower() == "no":print("\t您已放弃本次使用机会")else:print("\t输入错误,您错过了本次使用机会,下次注意哦  p≧w≦q")player_information["money"] += 10 * int(multi);print("\t您现有金额为:{}".format(player_information["money"]))

⑥ 道具购买:

        if player_information["money"] % 100 == 0:  #用户金额若是100的倍数则可购买道具shop = input("您现有金额为:{},请问是否购买道具 是(yes) or 否(no): ".format(player_information["money"]))if shop.lower() == "yes":shop = str(input("\t请选择想要购买的道具编号:{}".format(properties)))use_pro_count += 1if shop == "a":use_pro_a += 1player_properties.append("a")  #添加道具player_information["money"] -= 20print("\t购买成功! 金额-20 剩余金额为{0} a类道具剩余{1}个".format(player_information["money"], use_pro_a))elif shop == "b":use_pro_b += 1player_properties.append("b")  #添加道具player_information["money"] -= 25print("\t购买成功! 金额-25 剩余金额为{0} b类道具剩余{1}个".format(player_information["money"], use_pro_b))else:print("\t商城暂未上架该道具,敬请期待后续版本哦  O(∩_∩)O ")elif shop.lower() == "no":print("\t您已放弃本次购买机会")else:print("\t输入错误,您错过了本次购买机会,下次注意哦  p≧w≦q")

⑦ 玩家注册:

player_name = input("请玩家填写用户名:")
player_age = input("{}您好,请输入您的年龄:".format(player_name))
player_information = {"player_name": player_name, "player_age": int(player_age)}

⑧ 进入游戏:

result = input("是否进入游戏 是(yes) or 否(no):")
if (result.lower() == "yes"):# 省略print("游戏结束!{0}一共进行{1}次对局,赢了{2}次".format(player_name,run - 1, (run - lose_time - 1)))
else:print("\n\t再见,期待您下次进入本游戏哦  = ̄ω ̄= ")

基于python的猜大小游戏相关推荐

  1. python编写猜大小游戏_python编写猜数字小游戏

    本文实例为大家分享了python编写猜数字小游戏的具体代码,供大家参考,具体内容如下 import random secret = random.randint(1,30) guess = 0 tri ...

  2. 采用python语言实现猜数游戏_用python实现猜数游戏

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 本文实例为大家分享了python实现猜数游戏的具体代码,供大家参考,具体内容如下 ...

  3. 基于html的猜数字游戏设计

    基于html的猜数字游戏设计 一.原示例代码 主界面代码 <!DOCTYPE html> <html> <head><!--设置字体格式为utf-8--> ...

  4. python编写猜数游戏代码、如果不是整数、显示输入错误_数字炸弹游戏程序 用python来实现...

    相信许多小伙伴都玩过数字炸弹游戏,就是指在一定数字范围(一般是整数,不包含边界)里,一个玩家选中一个数字当作炸弹,其余玩家在这个范围含数字,每次只要没猜中炸弹数字,则根据玩家猜的数字缩小范围,直至其中 ...

  5. python编写猜数游戏代码、如果不是整数、显示输入错误_python编写猜数游戏代码、如果不是整数、显示输入错误_数字炸弹游戏程序 用python来实现......

    相信许多小伙伴都玩过数字炸弹游戏,就是指在一定数字范围(一般是整数,不包含边界)里,一个玩家选中一个数字当作炸弹,其余玩家在这个范围含数字,每次只要没猜中炸弹数字,则根据玩家猜的数字缩小范围,直至其中 ...

  6. python 游戏开发框架_Python开发 基于python实现坦克大战游戏

    这篇文章主要为大家详细介绍了基于python实现坦克大战游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 本文实例为大家分享了python实现坦克大战游戏的具体代码, ...

  7. python扫雷的代码及原理_基于Python实现的扫雷游戏实例代码

    摘要:这篇Python开发技术栏目下的"基于Python实现的扫雷游戏实例代码",介绍的技术点是"Python实现.Python.实例代码.扫雷游戏.扫雷.游戏" ...

  8. shell脚本实现猜大小游戏

    猜大小游戏: 脚本需求如下: • 执行guest.sh • 脚本会提示请输入一个数字: • 当输入数字比幸运数字大那么提示数字太大了!并重新提示请输入一个数字: 当输入数字比幸运数字小那么提示数字太小 ...

  9. 基于python的植物大战僵尸游戏开发

    1 简介 今天向大家介绍一个帮助往届学生完成的毕业设计项目,基于python的植物大战僵尸游戏开发. 计算机毕业生设计,课程设计需要帮助的可以找我 2 设计概要 21世纪是信息化时代,随着信息技术和网 ...

  10. Python实现猜词游戏 Hangman Game(不带提示和带提示版本)

    本文目录 Python实现猜词游戏(Hangman Game) 一.任务准备 二.Hangman游戏的功能需求 三.辅助函数的构建 1.确定一个单词是否被猜出 2.获取用户当前的猜词进度 3.确定还有 ...

最新文章

  1. Docker不再是唯一的选择
  2. CodeForces - 1486C2 Guessing the Greatest (hard version)(二分+交互)
  3. 怎样理解 MVVM ( Model-View-ViewModel ) ?
  4. Bootstrap模态框显示时有阴影遮罩层
  5. 用PHP做一道单选选择题的页面,【大神看过来】根据一个用PHP做的单选投票,改成多选,且可显示...
  6. Axure 8 Tab制作
  7. 简述台式计算机组装的基本步骤,《计算机组装与维修》期中考试试卷答案
  8. Qt5.12下载和安装教程(图文详解,简单易上手)
  9. python网易云收费_python网易云音乐抓取
  10. 计算机软考网络工程师英语,计算机软考网络工程师必备英语词汇全集
  11. Automatic detection and segmentation of optic disc and fovea in retinal images
  12. 数据结构教程(c语言)(已完结)
  13. 从Netty基础到聊天系统和RPC实战-卷二
  14. ubantu pyCharm python 安装
  15. 计算机时间小于会计期间错误,会计期间手工记账和电脑记账不一样问题
  16. ntoskrnl.exe 占用80端口 apache 无法启动
  17. Android开发读取通讯录信息
  18. windows 音频编程
  19. Silanna Semiconductor与Transphorm联合开发一流的65W USB-C PD GaN适配器参考设计
  20. 中国N-环己基吡咯烷酮市场深度研究分析报告

热门文章

  1. 串口和并口通信1-概念
  2. 我的世界怎么在服务器中显示键位,我的世界基础键位操作介绍 | 我的世界 | MC世界侠...
  3. 彻底删除dll文件,填坑!
  4. java图书借阅系统java图书管理系统java书籍借阅系统
  5. ios不能保存png_花瓣网上面的图不能下载?教你怎样快速批量提取花瓣网图片
  6. 图吧主机linux,图吧的日常 篇一百零六:图吧垃圾佬的LINUX体验(UBUNTU)
  7. winform5、高清屏下字体模糊的解决方法
  8. SaaS-HRM(5)系统用户权限设计(角色管理、权限和资源管理)
  9. 【易语言界面开发系列教程之 (EX_UI使用系列教程--第10讲(EXui右键菜单演示案例))】
  10. Linux下安装Redis——菜鸟入门教程