企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
# Python 程序:打乱纸牌 > 原文: [https://www.programiz.com/python-programming/examples/shuffle-card](https://www.programiz.com/python-programming/examples/shuffle-card) #### 在此程序中,您将学习使用`random`模块打乱一副纸牌。 要理解此示例,您应该了解以下 [Python 编程](/python-programming "Python tutorial")主题: * [Python `for`循环](/python-programming/for-loop) * [Python 模块](/python-programming/modules) * [Python `random`模块](/python-programming/modules/random) * [Python 编程内置函数](/python-programming/built-in-function) * * * ## 源代码 ```py # 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]) ``` **输出** ```py You got: 5 of Heart 1 of Heart 8 of Spade 12 of Spade 4 of Spade ``` **注意**:再次运行程序以洗牌。 在程序中,我们使用了`itertools`模块中的`product()`函数来创建一副纸牌。 此函数执行两个序列的笛卡尔积。 这两个序列是从 1 到 13 的数字和四个西装。 因此,总共有`13 * 4 = 52`个项目,每张卡都作为一个元组。 例如, ```py deck[0] = (1, 'Spade') ``` 我们的卡座是有序的,因此我们使用`random`模块中的`shuffle()`函数对其进行混洗。 最后,我们画出前五张卡片并将其显示给用户。 每次您运行该程序时,我们都会得到不同的输出,如两个输出所示。 在这里,我们使用了 Python 随附的标准模块`itertools`和`random`。