棋牌游戏11点

import random
# 扑克牌
poke_list = [("红桃", 1), ("黑桃", 1), ("黑片", 1), ("红片", 1), ("红桃", 2), ("黑桃", 2), ("黑片", 2), ("红片", 2),
             ("红桃", 3), ("黑桃", 3), ("黑片", 3), ("红片", 3), ("红桃", 4), ("黑桃", 4), ("黑片", 4), ("红片", 4),
             ("红桃", 5), ("黑桃", 5), ("黑片", 5), ("红片", 5), ("红桃", 6), ("黑桃", 6), ("黑片", 6), ("红片", 6),
             ("红桃", 7), ("黑桃", 7), ("黑片", 7), ("红片", 7), ("红桃", 8), ("黑桃", 8), ("黑片", 8), ("红片", 8),
             ("红桃", 9), ("黑桃", 9), ("黑片", 9), ("红片", 9), ("红桃", 10), ("黑桃", 10), ("黑片", 10), ("红片", 10),
             ("红桃", 11), ("黑桃", 11), ("黑片", 11), ("红片", 11), ("红桃", 12), ("黑桃", 12), ("黑片", 12),
             ("红片", 12), ("红桃", 13), ("黑桃", 13), ("黑片", 13), ("红片", 13), ("小王", 14), ("大王", 15)]
# 玩家
user_list = ["zzz", "wqy", "wmy"]
random.shuffle(user_list)
# print(user_list)

# 玩家信息和分数情况
result = {user_list[0]: 0, user_list[1]: 0, user_list[2]: 0}
# print(result)

# flag 游戏是否进行标志; start_flag 是否为第一回合标志; play——flag 玩家是否能够继续游戏标志
flag = 1
start_flag = 1
play_flag = [1, 1, 1]
while flag:
    # 判断是否为第一回合自动发牌
    if start_flag == 1:
        for i in range(3):
            index = random.randint(0, len(poke_list) - 1)
            print(user_list[i], "玩家获得:", poke_list[index])
            if poke_list[index][1] > 10:
                result[user_list[i]] = result[user_list[i]] + 0.5
            else:
                result[user_list[i]] = result[user_list[i]] + poke_list[index][1]
            print(result)
            poke_list.pop(index)
    start_flag = 0
    for j in range(3):
        # 玩家选择要还是不要,要的话玩家标志为1,不要为0
        if play_flag[j] == 1:
            print(user_list[j], end="")
            choose = input("玩家选择要牌请输入1,不要请输入2:")
            # 判断玩家是否输入正确
            while choose != "1" and choose != "2":
                print(user_list[j], end="")
                choose = input("玩家选择要牌请输入1,不要请输入2:")
            # if result[user_list[j]] < 11 and choose == "1" and play_flag[j] == 1:
            # 判断继续玩下去还是停止
            if choose == "1":
                index = random.randint(0, len(poke_list) - 1)
                print(user_list[j], "玩家获得:", poke_list[index])
                # 判断是否收到J,Q,K,小王,大王,以及该如何加分
                if poke_list[index][1] > 10:
                    result[user_list[j]] = result[user_list[j]] + 0.5
                else:
                    result[user_list[j]] = result[user_list[j]] + poke_list[index][1]
                # 达到最高分,自动停止
                if result[user_list[j]] == 11:
                    play_flag[j] = 0
                # 点数超过11,自动停止
                elif result[user_list[j]] > 11:
                    result[user_list[j]] = 0
                    play_flag[j] = 0
                    print("你的牌爆了,", user_list[j])
                print(result)
                poke_list.pop(index)
            elif choose == "2":
                play_flag[j] = 0
    # 判断游戏是否结束
    if play_flag[0] == 0 and play_flag[1] == 0 and play_flag[2] == 0:
        flag = 0
print(result)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值