-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdeckOfCards.py
More file actions
79 lines (63 loc) · 1.82 KB
/
deckOfCards.py
File metadata and controls
79 lines (63 loc) · 1.82 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
'''
******DECK OF CARDS****
*Player randomly selects 4 Card, if it is of the same number- prints Winner
*@author: PRAGNYA SRINIVASAN
'''
from random import shuffle
deck={}
card={}
def deckOfCards():
family=['Heart','Spades','Clubs','Diamond'] #Family of Cards
number=['Ace','King','Queen','Jack',"Ten","Nine","Eight","Seven","Six","Five","Four","Three","Two"]
deck=[[a,b] for a in family for b in number]
return deck
def userChoice():
choice=raw_input("Choose 4 unique numbers (0-51) with space between each number: ")
option=choice.split(" ")
return option
#Generate a unique number for each card
def generateNumberforCard(deck):
for i in range(0,len(deck)):
card[i]=deck[i]
return card
def shuffle_card(card):
values=card.values()
shuffle(values)
shuffledCard=dict(zip(card.keys(),values))
return shuffledCard
def printSelectedCard(selectedCard):
for i in selectedCard:
print 3*" ",i[1],"of",i[0]
print " "
def isWinner(selectedCard):
number=[]
for x in selectedCard:
n=x
number.append([y.split(',') for y in n][1])
x=number[0]
number.remove(x)
if len(number)==0:
print "YAY! YOU WON"
else:
print "OOPS! YOU LOST!"
def main():
print " "
selectedCard=[]
#Stores Deck of Cards
deck=deckOfCards()
#Creates a number for Deck of Cards
card=generateNumberforCard(deck)
#Shuffle the cards
shuffledCard = shuffle_card(card)
#Takes in User Options (4 numbers)
option=userChoice()
for i in option:
selectedCard.append(shuffledCard[int(i)])
print "The Cards you have chosen are: "
#Print the cards you have chosen
printSelectedCard(selectedCard)
#Check if winner or not
isWinner(selectedCard)
if __name__ == '__main__':
main()