制作一个简单的扑克游戏

Making a simple poker game

我正在制作一个简单的扑克游戏来打印获得的概率:1 对,然后 2 对,然后 3 个和 4 个。

我想做的是让用户拿到手牌 5 张。

然后在遍历列表的位置检查每张牌是否与其他任何牌匹配,并检查它是一对、两对、三对、还是四对。

然后最后检查拿到这些牌的概率。

我只是想开始这个,我不确定使用什么方法来检查任何两个元素是否相等,如果有两对,则检查 3 对和 4 对。

对于我知道的每个 if 语句,使用 break 和 return false 这样它就会结束 while 循环。

我使用 1-13 而不是字典来检查花色。

到目前为止,我刚刚打印了随机卡片组。

def poker():
    count = 0
    cards = []
    while(True):
        for i in range(0,5):
            cards = random.choice([1,2,3,4,5,6,7,8,9,10,11,12,13])
            if(cards[0] == cards[1,2,3,4]):
                 count+=1

这是对您当前代码的快速修改:

def poker():
    cards = []
    for i in range(5): #This is the same as range(0,5)
        # Use 'append' instead of '=' to add the new card to list instead of overwriting it
        cards.append(random.choice([1,2,3,4,5,6,7,8,9,10,11,12,13])) 
    # set() will give you a set of unique numbers in your hand
    # If you have a pair, there will only be 4 cards in your set!
    for card in set(cards):
        number = cards.count(card) # Returns how many of this card is in your hand
        print(f"{number} x {card}")

输出:

"1 x 2"
"1 x 6"
"2 x 8" # <-- Pair!
"1 x 10"

这应该能让您走上正轨!现在您可以知道手中每张牌的数量,您可以使用它来追踪每位玩家的手牌!

如果您对一段代码有任何进一步的具体问题,请在复习问题指南后随时提出另一个问题。