oop巩固1

来源:互联网 发布:阿里云 数据实时同步 编辑:程序博客网 时间:2024/06/10 05:39
##定义纸牌,初始化函数赋值大小和花色class Card:    ##定义类Card共享的cards列表    cards=[]    def __init__(self,rank,suit):        self.rank=rank        self.suit=suit        Card.cards.append(self)##每次创建一个Card实例就将自己放入cards列表中    ##repr函数在控制台输入实例时显示返回内容    def __repr__(self):        return '<纸牌 {} {}>'.format(self.suit,self.rank)    ##str函数在控制台打印实例时显示返回内容    def __str__(self):        return '[纸牌 {} {}]'.format(self.suit,self.rank)class Deck:    ##定义一副牌的大小和花色    ranks=[str(n) for n in range(2,11)]+list('JQKA')    suits=['黑桃','红桃','方片','梅花']    def __init__(self):        self.deck=[Card(rank,suit) for suit in suits for rank in ranks]    ##重写len方法    def __len__(self):        return len(self.deck)    ##重写getitem方法    def __getitem__(self,item):        return self.deck[item]