How to pick a random card in Python
In this Python tutorial, we will learn how to pick a random card from a deck of cards in Python. To learn how to select a random card in Python we gonna useĀ random module.
In my previous tutorial, I have shown you How to print a deck of cards in Python
You can follow that tutorial if you wish.
Pick a random card in Python
In order to pick a random card from a deck of cards in Python, firstly you have to store all the cards. Then choose any random card. But there are 52 cards. I think it will not a good practice to store all the cards one by one in a list.
So, we are going to learn a smarter way to do this.
- At first, store all the values of the cards in a list ( values are from 2 to A )
- Then, store the signs of the card. (Club, Heart, Spade, Diamond )
- Using the random module, choose a random value from the first list
- Using the random module choose a random sign from the second list
- Just concatenate those random value and sign
Suppose we got value 8 from the first list as a random value and Club as a random sign from the second list.
Thus we can get a random card, which is 8 of CLUB
Python program to select a random card in Python from a deck of cards
import random card_points =['A','K','Q','J','2','3','4','5','6','7','8','9','10'] card_signs =['Heart','CLUB','DIAMOND','SPADE'] random_point = random.choice(card_points) random_sign = random.choice(card_signs) random_card = random_point,random_sign print(random_card)
Output:
$ python codespeedy.py ('5', 'SPADE')
That means the random card is 5 of SPADE
Each time you run the code, you will get a new random card.
Explanation of the program to choose a random card from a deck of cards in Python
At first, we have imported random module using the below line
import random
Learn more,
Using the below two lines, we have stored all the values and signs
card_points =['A','K','Q','J','2','3','4','5','6','7','8','9','10'] card_signs =['Heart','CLUB','DIAMOND','SPADE']
To choose a random card we used,
random_point = random.choice(card_points) random_sign = random.choice(card_signs)
these two variables are used to store the random value and sign of a random card.
Finally, we concatenate the value and sign by using the below line
random_card = random_point,random_sign
We know there is not only a single solution to a particular problem. if you find any other solution feel free to let others know using the below comment section.
Leave a Reply