Python Examples

Python Program to Shuffle Deck of Cards

Python deck of cards program is the code that can be used to shuffle the cards of a deck. For the program, packages such as itertools and random are used. The random library has a method in-built in it called shuffle that is used to mix and randomize the order of the data and then print it. Thus, to understand the code, you will need to have a clear concept of how loops work. Also, you should be aware of how one can use modules and built-in functions in Python.  

python deck of cards

Program to Shuffle Deck of Cards


import itertools. Random 

deck = list (itertools.product (range (1, 14), [‘Spade’, ‘Heart’, ‘Diamond’, ‘Club’]))

random.shuffle (deck)

print (“You got:”)

for i in range (3):

              print (deck [i][0\, “of”, deck [i][1])

Each time the product is run, you get a different set of cards in the output. You can also change the number of cards that are shuffled and provided in the output. 

The product () function is used in a program that is available in the itertools module. The function creates a deck of cards by conducting the Cartesian product of two sequences. 

The two sequences that are taken in this case are numbers ranging from 1 to 13 (for the 13 cards that are available in the deck for each suit) and 4 (to represent the four suits). 

Their product provides 52 cards that are treated as a deck, with each card as an element of a tuple. Once the deck is created, it is ordered. Using the shuffle () function that is built in the random module, the deck of cards, or the elements of the tuple, are shuffled randomly. 

Thus, with the use of itertools and random standard modules, we can create and shuffle any elements that are present in a tuple. 

Another method through which a deck of the card can be shuffled in Python is by using OOPS. A class named Cards is created that will have two variables, suits and values. These are global variables. Another class named Deck will be created that will have an empty list. The suits and values variables from the previous class will be appended in this empty list. 

A class will be created that will include the shuffle () method to shuffle the deck of cards and print the required number of cards. You can even define another function that removes some specific cards from the deck.   

FAQs on Python Deck of Cards

Q1. What is the deck in Python?

A deck in Python is defined as a tuple or a list within a list. It contains two elements. The first element will represent the number of cards that are present in a suit, that is, from 1 to 13 and the other element represents the four suits. These 52 elements in total represent the deck of cards. 

Q2. How do you print a deck of cards in Python?

To print the Python deck of cards, first, create the deck using the product () function. Then, the FOR loop can be used to print all the cards present in the deck. You can also use a WHILE loop or a recursive function to print all the cards of a deck.

Q3. What are the 52 cards in a deck?

The 52 cards in a deck are made of four suits, that are, spades, heart, diamond, and club. For each suit, 13 cards are present. Thus, the total number of cards in a deck is 13 x 4 = 52. Some decks also have Jokers added to the deck. 

Q4. What are the 4 suits in a deck of cards?  

In a deck, the 4 suits are spades, heart, diamond, and club. 

Share with friends

Customize your course in 30 seconds

Which class are you in?
Get ready for all-new Live Classes!
Now learn Live with India's best teachers. Join courses with the best schedule and enjoy fun and interactive classes.
Ashhar Firdausi
IIT Roorkee
Dr. Nazma Shaik
Gaurav Tiwari
Get Started

Leave a Reply

Your email address will not be published. Required fields are marked *

Download the App

Watch lectures, practise questions and take tests on the go.

Customize your course in 30 seconds

No thanks.