Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Card:
- def __init__(self, suit, value):
- value = str(value)
- self.rank_names = ["Ace", "2", "3", "4", "5", "6", "7", "8", "9", "10", "Jack", "Queen", "King"]
- self.st = suit[0].upper() + suit[1:]
- self.val = value[0].upper() + value[1:]
- def suit(self):
- return self.st
- def short_suit(self):
- return self.st[0]
- def nice_suit(self):
- return {"Spades" : chr(0x2660), "Clubs" : chr(0x2663), "Hearts" : chr(0x2665), "Diamonds" : chr(0x2666) } [self.st]
- def value(self):
- return self.val
- def shor_value(self):
- return self.val[0]
- def __str__(self):
- return self.nice_suit() + " " + self.shor_value()
- def __next__(self):
- self.val = self.rank_names[(self.rank_names.index(self.val) + 1) % 13]
- return self.val
- def __eq__(self, other):
- return self.st == other.st and self.val == other.val
- def __ne__(self, other):
- return not(self == other)
- def __gt__(self, other):
- if self.rank_names.index(self.val) == other.rank_names.index(other.val):
- return False
- elif (self.val == "2") and (other.val == "Ace"):
- return True
- elif self.val == "Ace" and other.val == "2":
- return False
- elif self.val == "Ace":
- return True
- elif self.rank_names.index(self.val) > other.rank_names.index(other.val):
- return True
- elif self.rank_names.index(self.val) < other.rank_names.index(other.val):
- return False
- def __lt__(self, other):
- if self.rank_names.index(self.val) == other.rank_names.index(other.val):
- return False
- elif (self.val == "2") and (other.val == "Ace"):
- return False
- elif self.val == "Ace" and other.val == "2":
- return True
- elif self.val == "Ace":
- return False
- elif self.rank_names.index(self.val) > other.rank_names.index(other.val):
- return False
- elif self.rank_names.index(self.val) < other.rank_names.index(other.val):
- return True
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement