對象方法的小例子

要求:
定義父類:人
屬性爲:年齡。姓名
方法爲:走路(打印:姓名「正在走路」)
定義子類:老師
屬性:上課學生
方法:授課(打印:姓名+老師正在授課,並調用全部上課學生的聽課方法),下課,(打印下課,並調用全部學生的走路方法)
定義子類:學生
學號
方法:聽課(打印:姓名+學號‘正在聽課’)
實例化一個老師,三個學生,而後模擬老師授課,老師下課的情景python

#coding: utf-8
class Person(object):
    def __init__(self,name,age):
        self.name = name
        self.age = age
    def run(self):
        print   self.name,('正在走路')
class Teacher(Person):
    def __init__(self,name,age,students):
        Person.__init__(self,name,age)
        self.students = students
    def teach(self):
        print self.name,'正在上課'
        for i in self.students:
            i.listen()
    def dismiss(self):
        print "下課了"
        for i in self.students:
            i.run()
class Student(Person):
    def __init__(self,name,age,num):
        Person.__init__(self,name,age)
        self.num = num
        self.name = name
        self.age = age
    def listen(self):
        print self.name,self.num,'正在聽課'
if __name__ == '__main__':
    studnetlist = [Student('zhangsan','14','07150201'),Student('lishi','12','07150202')]
    lwj = Teacher('李文靜','30',studnetlist)
lwj.teach()
print '…………四十分鐘以後…………'
lwj.dismiss()

效果
李文靜 正在上課
zhangsan 07150201 正在聽課
lishi 07150202 正在聽課
…………四十分鐘以後…………
下課了
zhangsan 正在走路
lishi 正在走路web

相關文章
相關標籤/搜索