0

我正在创建一个拉米牌游戏,我在其中输入 7 张牌。A、2、3、4、5、6、7、8、9、T、J、Q、K为牌号。S、H、C、D 是花色(黑桃、红心、梅花、方块) 例如。8H 是 8 颗心

代码:

card1, card2, card3, card4, card5, card6, card7 = input('1. ').split(', ')

c1p1, c1p2 = card1[:-1], card1[1:]

c2p1, c2p2 = card2[:-1], card2[1:]

c3p1, c3p2 = card3[:-1], card3[1:]

c4p1, c4p2 = card4[:-1], card4[1:]

c5p1, c5p2 = card5[:-1], card5[1:]

c6p1, c6p2 = card6[:-1], card6[1:]

c7p1, c7p2 = card7[:-1], card7[1:]

我将用户的输入与卡号和西装分开。这个程序的目标是找出它们是否是 3 到 4 张具有相同数字的卡片,但我不知道如何比较所有 7 个数字来确定其中 3-4 是否相等。

任何帮助将不胜感激,谢谢:)

4

2 回答 2

0

你可以使用类似 list.count(listElement)

for item in list:
    c= list.count(item)
    if c>3:
        print "card %s is more than 3 times"%item
于 2013-04-06T19:30:23.190 回答
0

我会用字典来计算一个数字出现的次数,试试下面的代码:

def method():
    cards_string = "8H,3S,4H,7D,5C,JH,AS"
    cards = cards_string.split(',')
    card_numbers_count = {'A':0, '2':0, '3':0, '4':0, '5':0, '6':0, '7':0, '8':0, '9':0, '10':0, 'J':0, 'Q':0, 'K':0}

    for card in cards:
        card_number = card[:-1]
        card_numbers_count[card_number] += 1

    print card_numbers_count


if __name__ == "__main__":
    method()
于 2013-04-06T19:40:19.823 回答