📅  最后修改于: 2020-09-21 02:28:33             🧑  作者: Mango
# 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()
对其进行shuffle()
。
最后,我们画出前五张卡片并将其显示给用户。每次运行此程序时,我们都会得到不同的输出,如两个输出所示。
在这里,我们使用了Python附带的标准模块itertools
和random
。