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