我现在正在做一个BlackJack程序,我想在一本字典里做一副完整的卡片,比如..。
"card" : pointscards = {
"2S" : 2,
"2H" : 2,
"2D" : 2,
"2C" : 2,
"3S" : 3,
"3H" : 3,
"3D" : 3,
"3C" : 3
.
.
.
"JS" : 10,
"JH" : 10,
"JD" : 10,
"JC" : 10,
}..。然后将随机卡片添加到其他字典中(玩家或计算机),从主甲板移除或移至:
player_cards = {}
computer_cards = {}如何将随机项从cards字典移动到其他字典?交易结束后,牌将从主甲板上消失,并出现在玩家和电脑上。
发布于 2022-03-08 18:37:24
import random
random_card = random.choice(list(cards))
player_cards[random_card] = cards[random_card]发布于 2022-03-08 18:53:33
请澄清你的问题
我假设字典“卡片”中的值是每个面和每个值所剩的牌数,但这没有什么意义,因为你有多个2把黑桃(我想这意味着你使用了多个甲板?)但这意味着可以连续画两个黑桃)。
如果这是你想要的,那么
import random
drawn=random.choice([k for k in cards for x in range(cards[k])])
#If it is the player's turn
player_cards[drawn]=1
#If it is the computer's turn
player_cards[drawn]=1如果由于相同的索引键连续绘制同一张卡片,则此代码将遇到问题。因此,我认为将player_cards和computer_cards设置为字典的意义。如果您想要允许绘制相同的卡片,将他们变成列表,并简单地附加到他们抽签卡将是容易得多。
编辑:
当卡被拖到玩家/计算机的甲板上后,卡片就会从普通的甲板上消失,
cards[drawn]-=1https://stackoverflow.com/questions/71399882
复制相似问题