Skip to content

Commit 9907817

Browse files
committed
Shuffle deck of cards #368 (python)
1 parent 54ace3d commit 9907817

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed

shuffle_deck_of_cards.py

+28
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
# Shuffle a deck of cards
2+
from random import randint
3+
4+
suits = ['Clubs', 'Diamonds', 'Hearts', 'Spades']
5+
values = ['Ace', 'King', 'Queen', 'Jack', 'Ten', 'Nine', 'Eight', 'Seven', \
6+
'Six', 'Five', 'Four', 'Three', 'Two']
7+
8+
def main():
9+
10+
# Create deck
11+
deck = []
12+
for suit in suits:
13+
for value in values:
14+
deck.append("{} of {}".format(value, suit))
15+
16+
# shuffle
17+
deckSize = len(deck)
18+
maxCardIdx = deckSize - 1
19+
for cardIdx in range(deckSize):
20+
randIdx = randint(0, maxCardIdx)
21+
deck[cardIdx], deck[randIdx] = deck[randIdx], deck[cardIdx]
22+
23+
for idx, card in enumerate(deck, 1):
24+
print("{}. {}".format(idx, card))
25+
26+
27+
if __name__ == "__main__":
28+
main()

0 commit comments

Comments
 (0)