Day.1 关于随机摇骰子,并进行猜大小的游戏

游戏规则:

初始本金是1000元,默认赔率是1倍,赢了,获得一倍金额,输了,扣除1倍金额。

玩家选择下注,押大或押小;
输入下注金额;
摇3个骰子,11≤骰子总数≤18为大,3≤骰子总数≤10为小;
如果赢了,获得1倍金额,输了,扣除1倍金额,本金为0时,游戏结束。

编码思路:
1、如何让计算机随机投掷三个骰子并计算其结果
2、教会计算机什么是“大”,什么是“小”
3、让计算机对用户输入的值与随机结果进行判断,并对各类输入值的格式进行规范

游戏结果截图
摇骰子的运行结果截图

import random


def roll_dice():
    """
    定义一个函数,在1-6之间产生随机数,存储在列表result中
    并进行求和运算,结果存储在sum_result中
    """
    results = []
    for x in range(3):
        result = random.randint(1, 6)
        results.append(result)
    print("""------------摇骰子-------------
摇骰结果:""", results)
    sum_results = 0
    for x in results:
        sum_results += x
    return sum_results


def big_or_small(points):
    """
    定义一个函数,用于界定骰子规则,对点数和的进行大小判断
    """
    big = 11 <= points <= 18
    small = 3 <= points <= 10
    if small:
        return 'SMALL'
    elif big:
        return 'BIG'


def start_dice_game():
    """
    定游戏函数,用于接受参数并且与随机摇骰子的结果进行判断
    """
    money = 1000  # 初始化本金为1000
    while money > 0:  # 指定循环的条件为本金大于0
        print('\n你目前的本金是{}'.format(money))
        print('------------开始游戏-------------')
        your_choice = input('请下注,small or big:')
        choice = ['small', 'big']
        if your_choice.lower() in choice:  # 首层if条件对用户输入的结果格式进行判断
            bet = int(input('下注金额:'))
            if bet > money:  # 第二层if条件对下注金额是否超过本金或小于零进行判断
                print("您下注的金额大于本金,臭穷逼")
            elif 0 < bet <= money:
                points = roll_dice()
                result = big_or_small(points)
                if result.lower() == your_choice.lower():  # 第三层if条件对roll_dice()的随机结果与预测结果进行判断
                    money += bet
                    print("恭喜!你赢了{},本金变为{}".format(bet, money))
                elif result.lower() != your_choice.lower():
                    money -= bet
                    print("很遗憾,你输了{},本金变为{}".format(bet, money))

            elif bet <= 0:
                print("下注金额至少大于0元")

        elif your_choice.lower() not in choice:
            print("您输入的格式有误,不区分大小写,请检查拼写是否有误")

    else:
        print("本金已用完,游戏结束")  # while…else,在条件语句为false时执行else的语句块

start_dice_game()





猜你喜欢

转载自blog.csdn.net/weixin_42999937/article/details/82886683