103.继承案例二
Posted kangwenju
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了103.继承案例二相关的知识,希望对你有一定的参考价值。
继承案例二
1.定义一个人类:
包括属性:姓名(name)、性别(sex)、年龄(age)、国籍(country)
包括方法:吃饭(eat)、睡觉(sleep),工作(work)
# 自定义一个人类 class Person(object): def __init__(self, name, sex, age, country): """ :param name: 名字 :param sex: 性别 :param age: 年龄 :param country: 国籍 """ self.name = name self.sex = sex self.age = age self.country = country def eat(self): """吃饭""" print("%s要吃饭" % self.name) def sleep(self): """睡觉""" print("%s要睡觉" % self.name) def work(self): """工作""" print("%s要睡觉" % self.name)
2.根据人类,派生一个学生类:
增加属性:学校(school_name)、学号(no)
重写工作方法(学生的工作是学习)
# 自定义学生类 class Student(Person): def __init__(self, name, sex, age, country, school_name, no): """ :param name: 名字 :param sex: 性别 :param age: 年龄 :param country: 国籍 :param school_name: 学校名字 :param no: 学号 """ Person.__init__(name, sex, age, country) self.school_name = school_name self.no = no def work(self): """学习"""
3.根据人类,派生一个工人类:
增加属性:单位(company)、工龄(work_age)
重写工作方法(工人的工作是搬砖)
# 自定义工人类 class Worker(Person): def __init__(self, name, sex, age, country, company, work_age): """ :param name: 名字 :param sex: 性别 :param age: 年龄 :param country: 国籍 :param company: 公司 :param work_age: 工龄 """ Person.__init__(name, sex, age, country) self.company = company self.work_age = work_age def work(self): """搬砖""" print("%s搬砖很辛苦" % self.name)
4.根据学生类,派生一个学生干部类:
增加属性:职务(job)
增加方法: 开会(meet)
# 自定义学生干部类 class SuperStudent(Student): def __init__(self, name, sex, age, country, school_name, no, job): """ :param name: 名字 :param sex: 性别 :param age: 年龄 :param country: 国籍 :param school_name: 学校名字 :param no: 学号 :param job: 职务 """ Student.__init__(name, sex, age, country, school_name, no) self.job = job def meet(self): """开会""" print("%s%s需要开会" % (self.name, self.job))
例子1:
def __init__(self, name, sex, age, country): """ :param name: 姓名 :param sex: 性别 :param age: 年龄 :param country: 国籍 """ self.name = name self.sex = sex self.age = age self.country = country # 吃饭 def eat(self): print("%s要吃饭..." % self.name) # 睡觉 def sleep(self): print("%s要睡觉..." % self.name) # 工作 def work(self): print("%s要工作..." % self.name)
例子2:
# 1.定义一个人类: # 包括属性:姓名(name)、性别(sex)、年龄(age)、国籍(country) # 包括方法:吃饭(eat)、睡觉(sleep),工作(work) # 定义一个人类 class Person(object): def __init__(self, name, sex, age, country): """ :param name: 姓名 :param sex: 性别 :param age: 年龄 :param country: 国籍 """ self.name = name self.sex = sex self.age = age self.country = country # 吃饭 def eat(self): print("%s要吃饭..." % self.name) # 睡觉 def sleep(self): print("%s要睡觉..." % self.name) # 工作 def work(self): print("%s要工作..." % self.name) # 2. # 根据人类,派生一个学生类: # 增加属性:学校(school_name)、学号(no) # 重写工作方法(学生的工作是学习) # 自定义一个学生类 class Student(Person): def __init__(self, name, sex, age, country, school_name, no): # 调用父类的同名方法 Person.__init__(self, name, sex, age, country) # 自定义 self.school_name = school_name self.no = no def __str__(self): return "姓名:%s,性别:%s,年龄:%d,国籍:%s,学校:%s,学号:%s" % (self.name, self.sex, self.age, self.country, self.school_name, self.no) # 学习 def work(self): print("%s要学习..." % self.name) def s(): xh = Student("小红", "女", 19, "中国", "传智大学", "001") print(xh) xh.work() xh.eat() xh.sleep() s() def p(): # 创建一个小明对象 xm = Person("小明", "男", 20, "中国") xm.eat() xm.sleep() xm.work() print(xm)
例子3:
# 1.定义一个人类: # 包括属性:姓名(name)、性别(sex)、年龄(age)、国籍(country) # 包括方法:吃饭(eat)、睡觉(sleep),工作(work) # 定义一个人类 class Person(object): def __init__(self, name, sex, age, country): """ :param name: 姓名 :param sex: 性别 :param age: 年龄 :param country: 国籍 """ self.name = name self.sex = sex self.age = age self.country = country # 吃饭 def eat(self): print("%s要吃饭..." % self.name) # 睡觉 def sleep(self): print("%s要睡觉..." % self.name) # 工作 def work(self): print("%s要工作..." % self.name) # 3.根据人类,派生一个工人类: # 增加属性:单位(company)、工龄(work_age) # 重写工作方法(工人的工作是搬砖) # 自定义一个工人类 class Worker(Person): def __init__(self, name, sex, age, country, company, work_age): Person.__init__(self, name, sex, age, country) # 自定义 self.company = company self.work_age = work_age def __str__(self): return "姓名:%s,性别:%s,年龄:%d,国籍:%s,公司:%s,工龄:%d" % (self.name, self.sex, self.age, self.country, self.company, self.work_age) # 重写父类的work方法 def work(self): print("%s要搬砖..." % self.name) def w(): zs = Worker("张三", "男", 35, "中国", "XX公司", 5) zs.eat() zs.sleep() zs.work() w()
例子4:
# 1.定义一个人类: # 包括属性:姓名(name)、性别(sex)、年龄(age)、国籍(country) # 包括方法:吃饭(eat)、睡觉(sleep),工作(work) # 定义一个人类 class Person(object): def __init__(self, name, sex, age, country): """ :param name: 姓名 :param sex: 性别 :param age: 年龄 :param country: 国籍 """ self.name = name self.sex = sex self.age = age self.country = country # 吃饭 def eat(self): print("%s要吃饭..." % self.name) # 睡觉 def sleep(self): print("%s要睡觉..." % self.name) # 工作 def work(self): print("%s要工作..." % self.name) # 2. # 根据人类,派生一个学生类: # 增加属性:学校(school_name)、学号(no) # 重写工作方法(学生的工作是学习) # 自定义一个学生类 class Student(Person): def __init__(self, name, sex, age, country, school_name, no): # 调用父类的同名方法 Person.__init__(self, name, sex, age, country) # 自定义 self.school_name = school_name self.no = no def __str__(self): return "姓名:%s,性别:%s,年龄:%d,国籍:%s,学校:%s,学号:%s" % (self.name, self.sex, self.age, self.country, self.school_name, self.no) # 学习 def work(self): print("%s要学习..." % self.name) # 4.根据学生类,派生一个学生干部类: # 增加属性:职务(job) # 增加方法: 开会(meet) # 自定义学生干部类 class SuperStudent(Student): def __init__(self, name, sex, age, country, school_name, no, job): # 调用父类的方法 Student.__init__(self, name, sex, age, country, school_name, no) # 自定义植物 self.job = job # 自定义 开会 def meet(self): print("%s要开会..." % self.name) def ss(): xg = SuperStudent("小刚", "男", 22, "中国", "传智大学", "002", "班长") xg.meet() xg.work() xg.eat() xg.sleep() ss()
以上是关于103.继承案例二的主要内容,如果未能解决你的问题,请参考以下文章