Created
December 4, 2017 11:42
-
-
Save chaewonkong/d9a510ecbae39d4f052fde0e9eaf6cbd to your computer and use it in GitHub Desktop.
Training for Class and Inheritance
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| '''Class and inheritance | |
| base class = SchoolMember | |
| sub classes = Teacher, Student | |
| ''' | |
| class SchoolMember: | |
| '''Represents any school member.''' | |
| def __init__(self, name, age): | |
| self.name = name | |
| self.age = age | |
| print('(initialized SchoolMember: {})'.format(self.name)) | |
| def tell(self): | |
| '''Tell my details.''' | |
| print('Name: "{}" Age: "{}"'.format(self.name, self.age)) | |
| class Teacher(SchoolMember): | |
| '''Represents a teacher''' | |
| def __init__(self, name, age, salary): | |
| SchoolMember.__init__(self, name, age) | |
| self.salary = salary | |
| print('(Initialized Teacher: {})'.format(self.name)) | |
| def tell(self): | |
| SchoolMember.tell(self) | |
| print('Salary: "{:d}"'.format(self.salary)) | |
| class Student(SchoolMember): | |
| '''Represents a student''' | |
| def __init__(self, name, age, marks): | |
| SchoolMember.__init__(self, name, age) | |
| self.marks = marks | |
| print('(Initialized Student: {})'.format(self.name)) | |
| def tell(self): | |
| SchoolMember.tell(self) | |
| print('Marks: "{:d}"'.format(self.marks)) | |
| t = Teacher('Mrs. Shrividya', 40, 30000) | |
| s = Student('ChaewonKong', 25, 75) | |
| #prints a blank line | |
| print() | |
| members = [t, s] | |
| for member in members: | |
| #Works for both Teachers and Students | |
| member.tell() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment