【发布时间】:2020-06-20 16:23:56
【问题描述】:
我正在制作自己的二十一点游戏,而不使用其他解决方案。这只是代码的一部分,因为我正在逐步工作。我想合并一张卡片列表,以便为每个玩家制作一个新列表。我有第一对牌发给 4 位玩家:
shuffled_deck = [['A', '♦'], ['6', '♣'], ['2', '♥'], ['Q', '♦'], ['K', '♦'], ['3', '♠'], ['8', '♠'], ['9', '♠']]
players = [[1], [2], [3], [4]]
想要的输出>>
[[['A', '♦'], ['K', '♦']], [['6', '♣'], ['3', '♠']], [['2', '♥'], ['8', '♠']], [['Q', '♦'], ['9', '♠']]]
它只是向 4 名玩家发两张牌,就像在二十一点中一样。 我可以使用它来创建它:
#EXAMPLE 1
for i in range(0,4):
players[i] = [shuffled_deck[i]]
for j in range(0,4):
players[j].append(shuffled_deck[j+4])
但我想用这样的东西来做,但不知道怎么做。
count = 0
people = []
def combine_2_cards(people=[], count=count):
while count < 8:
people.append(shuffled_deck.pop(0))
count += 1
return combine_2_cards(people, count)
return people
players = combine_2_cards(people, count)
这只是创建了原始的 shuffled_cards 列表。也许还有更好的方法?
我需要让它像所需的输出一样附加。
【问题讨论】:
标签: python list recursion append blackjack