#!/usr/bin/env python
# Filename: inherit.py
class SchoolMember:
'''Represents any school member.'''
def __init__(self, name, age):
self.name = name
self.age = age
print('Initialized SchoolMember: %s' % self.name)
def details(self):
'''Tell my details.'''
print('Name: "%s"\nAge: "%d"' %(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 Techer: %s)' % self.name)
def details(self):
SchoolMember.details(self)
print('Salary: "%d"' % 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: %s)' % self.name)
def details(self):
SchoolMember.details(self)
print('Marks: "%d"' % self.marks)
t = Teacher('Mrs. Li', 40, 30000)
s = Student('Xiao ming', 22, 90)
print() # prints a blank line
members = [t, s]
for m in members:
m.details() # works for both teachers and students
print() # prints a blank line
输出结果:
Initialized SchoolMember: Mrs. Li
(Initialized Techer: Mrs. Li)
Initialized SchoolMember: Xiao ming
(Initialized Student: Xiao ming)
Name: "Mrs. Li"
Age: "40"
Salary: "30000"
Name: "Xiao ming"
Age: "22"
Marks: "90"
这是: