在Python中,如何将整数赋给包含字符串的列表中的元素?

2024-04-29 05:28:28 发布

您现在位置:Python中文网/ 问答频道 /正文

    ## made a list of playing cards e.g. 2C 2 of Clubs and QS is queen of Spades
    num=0
    numberlist=[]
    newSuitList= []
    for i in range(8):
        num = 2
        num = num + i
        num = str(num) + 'C'
        numberlist.append(num)
    for i in range (5):
        suitList = ["T", "J", "Q", "K", "A"]
        suit = suitList[i] + 'C'
        newSuitList.append(suit)
    wholeDeck = numberlist+newSuitList

制作卡片组后,我想为每张卡片指定一个值,以便 黑桃王(值13)的值比 例如黑桃皇后(12)。我不知道怎么做。你知道吗


Tags: ofinforrangenumlistcardssuit
2条回答

因为您的目标是将卡片与值关联起来,所以您希望改用字典(如注释所示)。以下是一个不会对代码进行太多更改的实现,它可以帮助您:

num=0
wholeDeck = {}
for i in range(8):
    num = 2
    num +=  i
    wholeDeck[str(num)+'C']  = num
suitList = ["T", "J", "Q", "K", "A"]
for item in suitList:
    num +=1
    wholeDeck[item+'C']  = num

因此,你可以像这样访问一张卡

print(wholeDeck['KC'])  > returns 13

另一种简单的方法是使用列表:

cards = ['A', 2, 3 , 4, 5, 6, 7, 8, 9, 10, 'J', 'Q', 'K']

def getCardValue(card):
  return cards.index(card) + 1

然后getCardvalue('Q')将返回值12

相关问题 更多 >