zoukankan      html  css  js  c++  java
  • Python__多态

    import abc

    #多态:同一种事物的多种形态
    class Animal: #同一类事物:动物
    def talk(self):
    pass

    class People(Animal): #动物的形态之一:人
    def talk(self):
    print('say hello')

    class Dog(Animal): #动物的形态之二:狗
    def talk(self):
    print('say wangwang')

    class Pig(Animal): #动物的形态之三:猪
    def talk(self):
    print('say aoao')

    class Cat(Animal):
    def talk(self):
    print('say miaomiao')


    class Bird:
    def talk(self):
    print('jijiji')

    #多态性:可以在不考虑实例类型的前提下使用实例
    p1=People()
    d=Dog()
    p2=Pig()
    c=Cat()
    b=Bird()

    # p1.talk()
    # d.talk()
    # p2.talk()
    # c.talk()
    # b.talk()

    def Talk(animal):
    animal.talk() #p1.talk()

    Talk(p1)
    Talk(d)
    Talk(p2)
    Talk(c)
    Talk(b)

    #多态性的好处

    #list,str,tuple
    l=list([1,2,3])
    t=tuple((1,2))
    s=str('hello')


    l.__len__()
    t.__len__()
    s.__len__()

    def my_len(obj):
    return obj.__len__()


    print(my_len(l))
    print(my_len(t))
    print(my_len(s))

    #len

  • 相关阅读:
    FR #3题解
    L3-005. 垃圾箱分布
    L2-004. 这是二叉搜索树吗?
    L2-002. 链表去重
    L1-009. N个数求和
    L3-003. 社交集群
    L3-004. 肿瘤诊断
    L2-001. 紧急救援
    L3-002. 堆栈
    L2-007. 家庭房产
  • 原文地址:https://www.cnblogs.com/wangmengzhu/p/7399448.html
Copyright © 2011-2022 走看看