Skip to main content
 首页 » 编程设计

python之生成之前没有生成过的数字或字符串

2025年05月04日17del

我正在创建一个受 black jack 启发的游戏,我使用以下代码生成牌组和手牌:

suits = 'SCHD' 
values = '23456789TJQKA' 
 
deck = tuple(''.join(card) for card in itertools.product(values, suits)) 
 
dealershand = random.sample(deck, 1) 
yourhand    = random.sample(deck, 2) 

这个问题是,在'dealershand'和'yourhand'中抽取同一张牌的可能性很小我想检查这张牌是否已经存在,如果存在,则生成另一张牌。像这样:

while yourhand is in dealershand: 
    yourhand=random.sample(deck,2) 

请您参考如下方法:

您可以使用 random.shuffle(deck) 来洗牌(需要是 list 而不是 tuple)和然后你可以使用deck.pop()一次抽一张牌。