python基础-craps赌牌游戏

感觉这个游戏以后可以做可视化的图形用户界面,所以改进一下,先记下来。

CRAPS又称花旗骰,是美国拉斯维加斯非常受欢迎的一种的桌上赌博游戏。该游戏使用两粒骰子,玩家通过摇两粒骰子获得点数进行游戏。简单的规则是:玩家第一次摇骰子如果摇出了7点或11点,玩家胜;玩家第一次如果摇出2点、3点或12点,庄家胜;其他点数玩家继续摇骰子,如果玩家摇出了7点,庄家胜;如果玩家摇出了第一次摇的点数,玩家胜;其他点数,玩家继续要骰子,直到分出胜负。

from time import sleep
from random import randint  # 这种写法使得之后的引用比random.randint更简洁

print('>>>>>======-游戏开始-======<<<<<')
start = True    # 标志位,使得游戏可以反复开始
while start:
    money = 1000
    while money > 0:
        print('你的总资产为:', money)
        needs_go_on = False
        while True:
            debt = int(input('请下注: ')) 
            if 0 < debt <= money:
                print('你的下注金额为', debt)
                break
            else:
                print('你的下注金额不合理!')
        first1 = randint(1, 6)  # 两个骰子分开,为以后图形界面考虑
        first2 = randint(1, 6)
        first = first2 + first1
        sleep(0.5)  # 暂停0.5秒,增加真实感
        print('玩家摇出了%d点' % first)
        if first == 7 or first == 11:
            print('玩家胜!')
            money += debt
        elif first == 2 or first == 3 or first == 12:
            print('庄家胜!')
            money -= debt
        else:
            needs_go_on = True	# 也是一个标志位
        while needs_go_on:
            needs_go_on = False
            current1 = randint(1, 6)
            current2 = randint(1, 6)
            current = current1 + current2
            sleep(0.5)
            print('玩家摇出了%d点' % current)
            if current == 7:
                print('庄家胜!')
                money -= debt
            elif current == first:
                print('玩家胜!')
                money += debt
            else:
                needs_go_on = True
    print('你破产了, 游戏结束!')
    while True:
        option = input('还想再玩一次吗?(回答y或n)\n')  # 一局游戏结束后询问是否再开一局
        #input函数的提示语不带换行,而print函数结尾自动换行
        yes = 'y'
        no = 'n'
        if option == yes:
            break
        elif option == no:
            start = 0
            print('>>>>>======-游戏结束-======<<<<<')
            break
        else:
            print('你的回答电脑无法识别!')

示例:
在这里插入图片描述
两次梭哈,都是直接破产🤣

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值