zoukankan      html  css  js  c++  java
  • Python面向对象 三大特性 综合案例+1(视频里的作业)

    class Dog:
    # 在创建一个小狗实例的时候,给它设置几个属性
    def __init__(self, name, age = 1):
    self.name = name
    self.age = age

    def eat(self):
    # print("名字是%s,年龄%d岁的小狗在吃饭"%(self.name,self.age))
    print("%s吃饭" % self)
    return self

    def play(self):
    print("%s玩" % self)
    return self

    def sleep(self):
    print("%s睡觉" % self)
    return self

    def watch(self):
    print("%s看家"%self)

    def __str__(self):
    # self对象本身对字符串的一个描述
    return "名字是{},年龄{}岁的小狗在".format(self.name, self.age)

    class Cat:
    # 在创建一个小狗实例的时候,给它设置几个属性
    def __init__(self, name, age = 1):
    self.name = name
    self.age = age

    def eat(self):
    print("%s吃饭" % self)
    return self

    def play(self):
    print("%s玩" % self)
    return self

    def sleep(self):
    print("%s睡觉" % self)
    return self

    def catch(self):
    print("%s捉老鼠"%self)

    def __str__(self):
    # self对象本身对字符串的一个描述
    return "名字是{},年龄{}岁的小猫在".format(self.name, self.age)

    class Person:
    # 在创建一个小狗实例的时候,给它设置几个属性
    def __init__(self, name, pets, age = 1):
    self.name = name
    self.age = age
    self.pets = pets
    def eat(self):
    print("%s吃饭" % self)
    return self

    def play(self):
    print("%s玩" % self)
    return self

    def sleep(self):
    print("%s睡觉" % self)
    return self

    def feed_pets(self):
    for pet in self.pets:
    pet.eat()
    pet.sleep()
    pet.play()

    def make_pets_work(self):
    for pet in self.pets:
    if isinstance(pet, Dog):
    pet.watch()
    elif isinstance(pet, Cat):
    pet.catch()
    def __str__(self):
    # self对象本身对字符串的一个描述
    return "名字是{},年龄{}岁的人在".format(self.name, self.age)
    d = Dog("小黑",18)
    c = Cat("小红",2)
    p = Person("BruceLong", [d, c], 24 )
    p.feed_pets()
    p.make_pets_work()
  • 相关阅读:
    51nod 1416 两点 dfs
    Codeforces Round #424 (Div. 2) A-C
    Codeforces Round #423 (Div. 2) A-C
    Codeforces Round #422 (Div. 2) A-C
    HDU 6077 Time To Get Up 模拟
    51nod 1381 硬币游戏 概率
    51nod 1100 斜率最大 计算几何
    hihocoder 1287 : 数论一·Miller-Rabin质数测试 大质数判定
    字典树
    数论
  • 原文地址:https://www.cnblogs.com/yunlongaimeng/p/8859237.html
Copyright © 2011-2022 走看看