定制类Athlete与继承类AthleteList

from sanitize import sanitize
#创建一个继承list属性的类AthleteList
class AthleteList(list):
    def __init__ (self, a_name, a_dob=None, a_times=[]):
        list.__init__([])
        self.name = a_name
        self.dob = a_dob
        self.extend(a_times)
    def top3(self):
        return(sorted(set([sanitize(t) for t in self]))[0:3])

#创建类的数据对象vera该对象同时继承了AthleteList类的属性和内置BIF list的属性
vera = AthleteList( 'vera vi')
vera.append('1.31')
print(vera.top3())

vera.extend([ '2.22', '1.21', '2.22'])
print(vera.name + ' fast time is '+ str(vera.top3()))
        

 

#定制方法     
        def add_time(self, time_value):
                self.times.append(time_value)

        def add_times(self, list_of_times):
                self.times.extend(list_of_times)        #使用extend()方法扩展self.time    

 

posted @ 2018-09-08 11:22  nester_liz  阅读(192)  评论(0)    收藏  举报