用python制作贺卡_制作python程序来处理卡片的麻烦。

一个选项就是使用python的内置函数random.shuffle。不要打扰词典;只需创建一个卡片列表并将其整个随机播放:

>>> import random

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

>>> suits = ['C', 'D', 'H', 'S']

>>> cards = [[rank, suit] for rank in ranks for suit in suits]

>>> random.shuffle(cards)

>>> cards

[['J', 'S'], ['2', 'S'], ['3', 'S'], ['9', 'S'], ['9', 'D'], ['5', 'S'],

['8', 'H'], ['A', 'C'], ['4', 'D'], ['Q', 'H'], ['2', 'C'], ['Q', 'D'],

['7', 'H'], ['4', 'C'], ['7', 'S'], ['6', 'C'], ['K', 'H'], ['6', 'S'],

['9', 'C'], ['9', 'H'], ['A', 'H'], ['J', 'C'], ['2', 'D'], ['J', 'H'],

['3', 'H'], ['4', 'H'], ['8', 'C'], ['Q', 'S'], ['10', 'S'], ['A', 'S'],

['K', 'S'], ['5', 'D'], ['10', 'D'], ['8', 'D'], ['7', 'C'], ['5', 'C'],

['Q', 'C'], ['3', 'D'], ['8', 'S'], ['6', 'H'], ['A', 'D'], ['2', 'H'],

['6', 'D'], ['K', 'D'], ['10', 'C'], ['5', 'H'], ['4', 'S'], ['K', 'C'],

['7', 'D'], ['10', 'H'], ['3', 'C'], ['J', 'D']]如果您需要自己动手,请考虑Fisher-Yates shuffle。这非常简单。

冒着明显可怕的风险,一旦你有一个洗牌清单,你可以简单地通过切片来处理它:

>>> hand1 = cards[0:13]

>>> hand2 = cards[13:26]

# ...and so on...或者以您需要的任何更复杂的方式。 (但是,请注意,没有必要循环通过手或类似的东西;因为它已经是随机的,简单的切片就足够了。)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值