Reading Time: 1 minutes
Shuffling a deck of cards (using Lists) in Python
Python script to shuffle a deck of cards using lists.
## SHUFFLING A DECK OF CARDS
## A deck of cards has 13 cards each of 4 suits: heart(♥), spade(♠), diamond(♦), club(♣).
## THOUGHT PROCESS: Construct an unshuffled deck by using two lists, one for suits, another for cardValues -> Shuffle the deck by iterating over all cards one by one using their indexes, and swapping the index with any random index.
import random
suits = ["♠", "♥", "♦", "♣"]
cardValues = ["2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K", "A"]
# initializing an empty deck
deck = []
# CONSTRUCTING AN UNSHUFFLED DECK
for suit in suits:
for value in cardValues:
deck.append(value + suit)
# printing the unshuffled deck
print("The original deck of cards:\n\n", deck)
# SHUFFLING CARDS: iterating over all cards one by one using their indexes, swapping the index with any random index
# Iterate over all cards one by one using their indexes
for index in range(0, len(deck)):
randomCardForSwitching = random.randrange(len(deck))
# Swapping indexes
temporaryIndex = deck[index]
deck[index] = deck[randomCardForSwitching]
deck[randomCardForSwitching] = temporaryIndex
# printing the shuffled deck
print("\nThe shuffled deck of cards:\n\n", deck)
Try it here.







