import random as rnd def minimum(aList): smallest=aList[0] for number in aList: if number < smallest: smallest = number return smallest class Card(): suits=["","Hearts","Spades","Clubs","Diamonds"] ranks=[0,"ace","2","3","4","5","6","7","8","9","10","Jack","Queen","King"] def __init__(self,rank,suit): self.rank=rank self.suit=suit def getRank(self): return self.rank def getSuit(self): return self.suit ## def __str__(self): ## return "("+str(self.rank)+", "+str(self.suit)+")" def __str__ (self): return Card.ranks[self.rank]+" of "+Card.suits[self.suit] class Deck(): def __init__ (self): self.deck=[] for rank in range(1,14): for suit in range(1,5): card= Card(rank,suit) self.deck.append(card) def printDeck(self): for card in self.deck: print(card) def shuffle(self): numOfCards=len(self.deck) for index in range(numOfCards): temp=self.deck[index] swapPosition=rnd.randrange(numOfCards) self.deck[index]=self.deck[swapPosition] self.deck[swapPosition]=temp def drawCard(self): if len(self.deck)>0: return self.deck.pop(0)