您的当前位置:首页正文

炸金花游戏功能的实现(发牌,计算牌型,比牌)——python2.7

2024-12-01 来源:个人技术集锦

最近在尝试做一款棋牌类游戏项目,看到炸金花的玩法后,就自己先写出炸金花的基本功能实现,给那些python爱好者参考一下。

炸金花是民间非常流行的一种扑克牌玩法,它具有独特的比牌规则,玩家按照规则以手中的三张牌来比输赢。游戏过程中需要考验玩家的胆略和智慧,由于玩法简单,易于上手,炸金花是被公认的最受欢迎的纸牌游戏之一。炸金花游戏参与人数 2- 6 人,使用一副去掉到大小王的扑克牌,共 52 张牌。

在本游戏demo中,用户输入游戏人数,系统给每位玩家发三张牌,然后进行比牌排序,最后挑选出牌最大的玩家。
排序判断:可以赋予牌型固定值,比如同花顺60,同花50,顺子40…牌型相同的,再进行细节比较。

初始化牌堆:game_config.py

#coding=utf-8

import random




# 花色 红黑方梅
SUITS = ['H', 'S', 'D', 'C']
# 初始基本牌
INIT_LIST = ['2', '3', '4', '5', '6', '7', '8', '9', 'T', 'J', 'Q','K','A']

MAPPING_LIST_NUM = '23456789TJQKA'
MAPPING_LIST_COLOR = 'DCHS'  # 方梅红黑

def init_landlords():
    lis = []
    for card in INIT_LIST:  # 数字
        for suit in SUITS:  # 花色
            lis.append('{0}{1}'.format(card, suit))
    random.shuffle(lis)
    return lis
    # print "初始化牌堆:", lis

def exchange_number(cards):
    number = []
    for r, s in cards:
        temp = MAPPING_LIST_NUM.index(r)
        number.append(temp)
    return number


def exchange_color(cards):
    color = []
    for r, s in cards:
        temp = MAPPING_LIST_CO
显示全文