源代码
# Python program to shuffle a deck of card
# importing modules
import itertools, random
# make a deck of cards
deck = list(itertools.product(range(1,14),['Spade','Heart','Diamond','Club']))
# shuffle the cards
random.shuffle(deck)
# draw five cards
print("You got:")
for i in range(5):
print(deck[i][0], "of", deck[i][1])
输出
You got: 5 of Heart 1 of Heart 8 of Spade 12 of Spade 4 of Spade
注意:再次运行程序以洗牌。
在此程序中,我们使用 `itertools` 模块中的 `product()` 函数来创建一副扑克牌。此函数执行两个序列的笛卡尔积。
这两个序列是 1 到 13 的数字和四种花色。因此,我们总共有 13 * 4 = 52 张牌,每张牌都是一个元组。例如,
deck[0] = (1, 'Spade')
我们的牌组是有序的,所以我们使用 `random` 模块中的 `shuffle()` 函数来洗牌。
最后,我们抽出前五张牌并将其显示给用户。每次运行此程序时,您都会得到不同的输出,如我们的两个输出所示。
这里我们使用了 Python 自带的标准模块 `itertools` 和 `random`。
另请阅读