class athlete:
def __init__(self, path):
with open(path) as timef:
temp = timef.readline()
temp = temp.strip().split(',')
self.name = temp[0]
self.date = temp[1]
self.data = temp[2:len(temp)]
def sort_time(self):
clean_data = []
for time in self.data:
if '-' in time:
splitter = '-'
elif ':' in time:
splitter = ':'
else:
splitter = '.'
(mins, secs) = time.split(splitter)
clean_data.append(mins + '.' + secs)
return sorted(set(clean_data))[0:3]
if __name__ == '__main__':
james = athlete('./data/james2.txt')
julie = athlete('./data/julie2.txt')
mikey = athlete('./data/mikey2.txt')
sarah = athlete('./data/sarah2.txt')
print(james.sort_time())
print(julie.sort_time())
print(mikey.sort_time())
print(sarah.sort_time())
suppose we inherit from buildin list data type
class athlete(list):
def __init__(self, path):
list.__init__([])
with open(path) as timef:
temp = timef.readline()
temp = temp.strip().split(',')
self.name = temp[0]
self.date = temp[1]
self.extend(temp[2:len(temp)])
def sort_time(self):
clean_data = []
for time in self:
if '-' in time:
splitter = '-'
elif ':' in time:
splitter = ':'
else:
splitter = '.'
(mins, secs) = time.split(splitter)
clean_data.append(mins + '.' + secs)
return sorted(set(clean_data))[0:3]
if __name__ == '__main__':
james = athlete('./data/james2.txt')
julie = athlete('./data/julie2.txt')
mikey = athlete('./data/mikey2.txt')
sarah = athlete('./data/sarah2.txt')
print(james.sort_time())
print(julie.sort_time())
print(mikey.sort_time())
print(sarah.sort_time())