i need to sort a list of card like the rank
sample: ACE of h, ACE of d, ACE of c, ACE of s, 2, 2, 2, 2
this is my code so can anyone help me???
sample: ACE of h, ACE of d, ACE of c, ACE of s, 2, 2, 2, 2
this is my code so can anyone help me???
Code:
class Card:
suitList = ["Hearts", "Diamonds", "Clubs", "Spades"]
rankList = ["Invalid", "Ace", "2", "3", "4", "5", "6", "7",
"8", "9", "10", "Jack", "Queen", "King"]
def __init__ (self, suit=0, rank=1):
if suit >= 0 and suit <= 3:
self.suit = suit
else:
self.suit = 0
if rank >= 1 and rank <= 13:
self.rank = rank
else:
self.rank = 1
def __str__(self):
return self.rankList[self.rank] + " of " + self.suitList[self.suit]
class Deck:
def __init__(self):
self.cards.sort
self.cards = []
for suit in range(4):
for rank in range(1,14):
self.cards.append(Card(suit, rank))
def __str__(self):
s = ""
for i in range(len(self.cards)):
s = s + (" " * i) + str(self.cards[i]) + "\n"
return s
def __str__(self):
return '\n'.join([str(self.cards[i]) for i in range(len(self.cards))])
def main():
card_deck = Deck()
print "Original deck:"
print card_deck
print
main()
Comment