我正在创建一个黑色杰克启发游戏,我使用以下代码生成甲板和手:
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)
Run Code Online (Sandbox Code Playgroud)
这样做的问题是,在'dealerhand'和'yourhand'中拉出同一张卡的可能性很小我想检查该卡是否已经存在,如果存在,则生成另一张卡.像这样的东西:
while yourhand is in dealershand:
yourhand=random.sample(deck,2)
Run Code Online (Sandbox Code Playgroud)
Luc*_*iti 10
你可以random.shuffle(deck)用来洗牌(这需要一个list而不是一个tuple),然后你可以用它deck.pop()来画一张牌.
| 归档时间: |
|
| 查看次数: |
65 次 |
| 最近记录: |