To understand this example, you should have the knowledge of following Python programming topics:
# Python program to shuffle a deck of card using the module random and draw 5 cards # import 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], "of", deck[i])
You got: 5 of Heart 1 of Heart 8 of Spade 12 of Spade 4 of Spade
Note: Run the program again to shuffle the cards.
In program, we used the
product() function in
itertools module to create a deck of cards. This function performs the Cartesian product of the two sequence.
The two sequence are, numbers from 1 to 13 and the four suits. So, altogether we have 13 * 4 = 52 items in the deck with each card as a tuple. For e.g.
deck = (1, 'Spade').
Our deck is ordered, so we shuffle it using the function
Finally, we draw the first five cards and display it to the user. We will get different output each time you run this program as shown in our two outputs.
Here we have used the standard modules
random that comes with Python.