py基础之掷骰子游戏的实现

2023-05-16

掷骰子游戏(循环的使用及掌握)
0、两个骰子都是1-6
1、玩游戏要有金币,没有金币不能玩游戏
2、玩一局游戏赠金币一枚,充值获得金币
3、充值为10元的倍数,10元/20个金币,20元/40个,每次最高100块
4、玩游戏消耗5个金币
玩法:
1、猜大小,猜对奖励2枚,猜错没有奖励并退出此轮
2、超出6点为大,否则为小
3、游戏结束:1、主动退出  2、没有金币退出
4、游戏结束打印剩余金币数,共玩了几局,赢了几局

import random


class DiceGame:
    # 金币数
    gold = 0
    # 胜场数
    win_num = 0
    # 总场数
    count = 0

    # 是否开始游戏
    def game_start(self):
        print("~~~~~~欢迎来到掷骰子游戏~~~~~~")
        try:
            is_start = int(input("开始新游戏请输入1,退出请输入0\n请输入:"))
        except:
            print("错误警告:不要淘气,请按提示输入!!!")
            self.game_start()
        else:
            if is_start == 1:
                self.top_or_game()
            elif is_start == 0:
                print("退出游戏成功")
                self.p_num()

    # 判断去充值还是直接开始游戏
    def top_or_game(self):
        if self.gold >= 5:
            # 开始游戏
            print("~~~~~~~游戏开始~~~~~~~")
            self.gold = self.gold - 5
            print("金币-5,剩余金币{}".format(self.gold))
            self.gold = self.gold + 1
            print("奖励金币+1,剩余金币{}".format(self.gold))
            self.game_begin()
        else:
            print("您只有{}个金币,不能进入游戏哦".format(self.gold))
            # 去充值
            self.top_gold()

    # 充值
    def top_gold(self):
        try:
            add_money = int(input("请选择你要充值的金额:(1)10元20个金币  (2)20元40个金币  (3)50元100个金币  (4)100元200个金币\n请输入:"))
        except:
            print("错误警告:!!!不要淘气,请按提示输入!!!")
            self.top_gold()
        else:
            if add_money == 1:
                self.gold = self.gold + 20
                print("充值10元成功,当前金币{}个".format(self.gold))
            elif add_money == 2:
                self.gold = self.gold + 40
                print("充值20元成功,当前金币{}个".format(self.gold))
            elif add_money == 3:
                self.gold = self.gold + 100
                print("充值50元成功,当前金币{}个".format(self.gold))
            elif add_money == 4:
                self.gold = self.gold + 200
                print("充值100元成功,当前金币{}个".format(self.gold))
            else:
                print("错误警告:!!!不要淘气,请按提示输入!!!")
        self.top_or_game()

    # 游戏开始
    def game_begin(self):
        self.count += 1
        # 电脑的随机骰子数
        computer1 = random.randint(1, 6)
        computer2 = random.randint(1, 6)
        com_num = computer1 + computer2
        # 用户输入大/小
        try:
            user_num = int(input("压大请按1,压小请按2\n请输入:"))
        except:
            print("错误警告:!!!不要淘气,请按提示输入!!!")
            self.game_begin()
        else:
            if user_num == 1:
                print("您压大")
            elif user_num == 2:
                print("您压小")
            else:
                print("错误警告:!!!不要淘气,请按提示输入!!!")
            print("1号骰子的点数是:{},2号骰子的点数是:{},总点数是{}".format(computer1, computer2, com_num))
        self.is_rebegin(com_num, user_num)

    # 判断输赢
    def is_rebegin(self, com_num, user_num):
        if user_num == 1 and com_num > 6 or user_num == 2 and com_num <= 6:
            print("您赢了")
            self.win_num += 1
            self.gold = self.gold + 2
            self.game_begin()
        else:
            print("您输了")
            self.game_start()

    # 输出相关数据
    def p_num(self):
        print("您的剩余金币是{}".format(self.gold))
        print("您一共玩了{}局".format(self.count))
        print("您一共赢了{}局".format(self.win_num))


if __name__ == '__main__':
    gs = DiceGame()
    gs.game_start()

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

py基础之掷骰子游戏的实现 的相关文章

随机推荐

  • 这些算法可视化网站助你轻松学算法

    来源 xff1a 公众号 编程珠玑 作者 xff1a 守望先生 前言 无疑 xff0c 数据结构与算法学习最大的难点之一就是如何在脑中形象化其抽象的逻辑步骤 而图像在很多时候能够大大帮助我们理解其对应的抽象化的东西 xff0c 而如果这个图
  • 关于学习生活记录的感想总结

    今年从4月开始决定写博客记录自己学习过程 xff0c 但是直到今天才不过写了1篇而已 xff0c 中间没有坚持 xff0c 这一年感觉过得很糟糕 xff0c 从很久开始我就明白自己有很大缺陷 xff0c 平时难以克服懒惰心理 xff0c 做
  • ESP32踩坑记1——未定义(undefined reference to)

    昨日心血来潮 xff0c 又开始玩起了我的小板板 xff0c 本想给他加个屏幕 xff0c 显示点什么东西 xff0c 用VScode编译的时候居然提示我没有找到文件 这怎么会呢 xff0c 我明明添加了c文件和h文件 xff0c 后来折腾
  • Docker容器进入的4种方式

    Docker容器进入的4种方式 在使用Docker创建了容器之后 xff0c 大家比较关心的就是如何进入该容器了 xff0c 其实进入Docker容器有好几多种方式 xff0c 这里我们就讲一下常用的几种进入Docker容器的方法 进入Do
  • 清晰解读C语言中的比特序、字节序、位域、大小端

    一 比特序 位序 比特序表示一个字节中8个比特位 xff08 bit xff09 之间的顺序问题 分为LSB 0 位序和MSB 0 位序 LSB 最低有效位 MSB 最高有效位 LSB least significant bit 0位序 x
  • 【转载】四种常见系统架构介绍

    转自于 四种常见系统架构介绍 宇大 大 博客园 软件架构 xff08 software architecture xff09 就是软件的基本结构 合适的架构是软件成功的最重要因素之一 大型软件公司通常有专门的架构师职位 xff08 arch
  • 在Ubuntu 20.04上通过Docker使用ROS Kinetic (含RViz, Gazebo等图形界面及加速方法)

    背景 传统上 xff0c ROS 1的每一代系统都基于某一个版本的Ubuntu系统进行开发 xff0c 而其依赖库规模庞大 xff0c 再加上Python 2 3的转换问题 xff0c 导致在不同版本的Linux系统上原生编译安装非对应版本
  • 嵌入式开发中断全解(2)Hard Fault的诊断

    承接上次的文章 xff0c 讲几个大家应该都看过下面的几个中断 xff0c 有的是在启动文件中或者是 c文件中 注意 xff1a 上述是ST公司的Stm32芯片 这里的GD32芯片是国产芯片 xff0c 和stm32类似的操作 xff0c
  • 梯度、Hessian矩阵、Jacobian矩阵的计算

    x表示为如下列向量 xff1a 一 f x 为一维 此时其一阶导数构成的向量为梯度向量g x xff0c 其二阶导数构成的矩阵为Hessian xff08 海森 黑塞 xff09 矩阵G x xff1b 导数可以表示为 xff1a 梯度向量
  • py基础之猜拳游戏的实现

    题目 xff1a 用所学的 py 基础实现猜拳游戏的 5 局 3 胜 xff08 面向对象之前的所有基础知识 xff09 要求 xff1a 5 局 3 胜 xff0c 平局时再加一局 人与电脑对局 思路 xff1a 用 0 表示剪刀 xff
  • 操作系统历史与设计理念

    操作系统的发展并不是一蹴而就的 xff0c 直到今天操作系统仍在不断发展中 xff0c 它与计算机硬件的发展息息相关 xff0c 例如内存 cpu等 以下是操作系统大致的演变过程 xff1a 到现如今 xff0c 计算机系统已经发生了翻天覆
  • 微软牵手大疆打造先进无人机技术

    2018微软人工智能大会正式开幕 xff0c 在大会上微软宣布 xff0c 全球最大的无人机制造商大疆创新 DJI 正在与微软合作 xff0c 打造面向企业市场的先进无人机技术 大疆创新首席科学家吴迪表示 xff0c 基于双方的战略合作 x
  • Linux环境使用VSCode调试简单C++代码

    本文将通过演示一个简单C 43 43 代码的编译调试过程 xff0c 介绍在VSCode中如何使用Linux环境下的GCC C 43 43 编译器 g 43 43 和GDB 调试器 gdb 关于GCC g 43 43 gcc gdb xff
  • layui date控件的使用

    最近项目多用layui xff0c 就总结一下 span class token tag span class token tag span class token punctuation lt span div span span cla
  • putty超时解决方案

    putty连续3分钟左右没有输入 就自动断开 然后必须重新登陆 很麻烦 在网上查了很多资料 发现原因有多种 环境变量TMOUT引起 ClientAliveCountMax和ClientAliveInterval设置问题或者甚至是防火墙的设置
  • 最好的黑客网站

    全国最早最大的黑客网站 黑客基地 xff1a http vip hackbase com 学黑客必去的网站 黑客基地 xff1a http www hackbase com 新手学黑客快速入门的好地方 xff1a http vip hack
  • mysql-connector-java-5.1.40-bin.jar包

    mysql connector java 5 1 40 bin jar 链接 xff1a https pan baidu com s 1G7 FsxkEJfZ4Cy6R s5j g 提取码 xff1a 5r5o
  • 利用spm12将dicom医学图像格式转成NII格式

    废话不多说 xff0c 直接上干货 xff0c 一 首先下载spm12 国外的下载源 xff0c 比较慢 xff0c 这里有百度网盘 xff0c 需要的直接下载 xff1a 链接 xff1a https pan baidu com s 1Z
  • securityCRT ssh远程开启mysql,断开连接后,mysql服务就停止服务

    问题描述 xff1a ssh远程连接服务器 xff0c 在服务器中开启mysql服务 xff0c 在正常断开ssh 连接后 xff0c 重新连接口查看mysql的状态发现 xff0c mysql的状态 xff1a 重新启动mysql xff
  • py基础之掷骰子游戏的实现

    掷骰子游戏 xff08 循环的使用及掌握 xff09 0 两个骰子都是1 6 1 玩游戏要有金币 xff0c 没有金币不能玩游戏 2 玩一局游戏赠金币一枚 xff0c 充值获得金币 3 充值为10元的倍数 xff0c 10元 20个金币 x