Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class student:
- def __init__(self, name, sex):
- self.name = name
- self.sex = sex
- self.scores = []
- self.fail = 0
- def add(self, sc):
- self.scores.append(sc)
- if sc < 60:
- self.fail += 1
- def get_avg(self):
- total = 0
- for i in self.scores:
- total += i
- return total / len(self.scores)
- s1 = student("Tom","M")
- s2 = student("Jane","F")
- s3 = student("John","M")
- s4 = student("Ann","F")
- s5 = student("Peter","M")
- s1.add(80)
- s1.add(90)
- s1.add(55)
- s1.add(77)
- s1.add(40)
- s2.add(58)
- s2.add(87)
- s3.add(100)
- s3.add(80)
- s4.add(40)
- s4.add(55)
- s5.add(60)
- s5.add(60)
- def top(students):
- top_avg = 0
- top_cls = None
- for s in students:
- if s.get_avg() > top_avg:
- top_avg = s.get_avg()
- top_cls = s
- return top_cls
- for s in [s1, s2, s3, s4, s5]:
- print('Name: {}'.format(s.name))
- print('Gender: {}'.format(s.sex))
- print('Grades: {}'.format(s.scores))
- print('Avg: {}'.format(s.get_avg()))
- print('Fail Number: {}\n'.format(s.fail))
- top_s = top([s1, s2, s3, s4, s5])
- print('Top Student:')
- print('Name: {}'.format(top_s.name))
- print('Gender: {}'.format(top_s.sex))
- print('Grades: {}'.format(top_s.scores))
- print('Avg: {}'.format(top_s.get_avg()))
- print('Fail Number: {}'.format(top_s.fail))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement