我有一个创建一副牌的类:import collections
Card = collections.namedtuple('Card', ['rank', 'suit', 'value'])
class FrenchDeck:
ranks = [str(n) for n in range(2, 11)] + list('JQKA')
suits = 'spades clubs hearts diamonds'.split()
card_value = [str(n + 1) for n in range(len(ranks))]
def __init__(self):
self._cards = [Card(rank, suit, value)
for suit in self.suits
for rank in self.ranks
for value in self.card_value
]
def __len__(self):
return len(self._cards)
def __getitem__(self, position):
return self._cards[position]
if __name__ == '__main__':
FrenchDeck()
我将value值添加到卡上,以便为每张卡分配一个值,如下所示:
^{pr2}$
它正在为每一套套装为每个等级创建13个项目。我理解为什么会发生这种情况,但我正在努力为每一个军衔增加价值,比如:Card(rank='2', suit='spades', value='1')
Card(rank='3', suit='spades', value='2')
Card(rank='4', suit='spades', value='3')
Card(rank='5', suit='spades', value='4')
Card(rank='6', suit='spades', value='5')
Card(rank='7', suit='spades', value='6')
Card(rank='8', suit='spades', value='7')
Card(rank='9', suit='spades', value='8')
Card(rank='10', suit='spades', value='9')
Card(rank='J', suit='spades', value='10')
Card(rank='K', suit='spades', value='11')
Card(rank='Q', suit='spades', value='12')
Card(rank='A', suit='spades', value='13')
你知道如何实现这个目标吗?在