oop_subclass.py 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. class SchoolMember:
  2. '''Represents any school member.'''
  3. def __init__(self, name, age):
  4. self.name = name
  5. self.age = age
  6. print '(Initialized SchoolMember: {})'.format(self.name)
  7. def tell(self):
  8. '''Tell my details.'''
  9. print 'Name:"{}" Age:"{}"'.format(self.name, self.age),
  10. class Teacher(SchoolMember):
  11. '''Represents a teacher.'''
  12. def __init__(self, name, age, salary):
  13. SchoolMember.__init__(self, name, age)
  14. self.salary = salary
  15. print '(Initialized Teacher: {})'.format(self.name)
  16. def tell(self):
  17. SchoolMember.tell(self)
  18. print 'Salary: "{:d}"'.format(self.salary)
  19. class Student(SchoolMember):
  20. '''Represents a student.'''
  21. def __init__(self, name, age, marks):
  22. SchoolMember.__init__(self, name, age)
  23. self.marks = marks
  24. print '(Initialized Student: {})'.format(self.name)
  25. def tell(self):
  26. SchoolMember.tell(self)
  27. print 'Marks: "{:d}"'.format(self.marks)
  28. t = Teacher('Mrs. Shrividya', 40, 30000)
  29. s = Student('Swaroop', 25, 75)
  30. # prints a blank line
  31. print
  32. members = [t, s]
  33. for member in members:
  34. # Works for both Teachers and Students
  35. member.tell()