一、多态

多态是指一类事物有多种形态,比如动物类,可以有猫,狗,猪等等。(一个抽象类有多个子类,因而多态的概念依赖于继承)

import abc

class Animal(metaclass=abc.ABCMeta):#同一类事物:动物

@abc.abstractmethod

def talk(self):

pass

class Cat(Animal):#动物的形态之一:猫

def talk(self):

print('say miaomiao')

class Dog(Animal):#动物的形态之二:狗

def talk(self):

print('say wangwang')

class Pig(Animal):#动物的形态之三:猪

def talk(self):

print('say aoao')

二、多态性

注意:多态与多态性是两种概念

多态性是指具有不同功能的函数可以使用相同的函数名,这样就可以用一个函数名调用不同内容的函数。在面向对象方法中一般是这样表述多态性:向不同的对象发送同一条消息,不同的对象在接收时会产生不同的行为(即方法)。也就是说,每个对象可以用自己的方式去响应共同的消息。所谓消息,就是调用函数,不同的行为就是指不同的实现,即执行不同的函数。

import abc

class Animal(metaclass=abc.ABCMeta):#同一类事物:动物

@abc.abstractmethod

def talk(self):

pass

class Cat(Animal):#动物的形态之一:猫

def talk(self):

print('say miaomiao')

class Dog(Animal):#动物的形态之二:狗

def talk(self):

print('say wangwang')

class Pig(Animal):#动物的形态之三:猪

def talk(self):

print('say aoao')

c = Cat()

d = Dog()

p = Pig()

def func(obj):

obj.talk()

func(c)

func(d)

func(p)

>>> say miaomiao

>>> say wangwang

>>> say aoao

综上可以说,多态性是 : 一个接口,多种实现

多态性的好处:

增加了程序的灵活性,以不变应万变,不论对象千变万化,使用者都是同一种形式去调用,如func(obj)

增加了程序额可扩展性,通过继承animal类创建了一个新的类,使用者无需更改自己的代码,还是用func(obj)去调用.

以上就是为大家带来的python中对多态和多态性的理解。达内每年输送10万+人才,18年来帮助80万学员高薪就业;协助16万家企业解决人才需求。拥有完善的就业保障体系,116万家招聘雇主合作企业。每天产生数千个招聘岗位,提供更多就业机会给到达内学员。找Python培训,选达内就对了!

python多态如何理解_大家对python中多态是如何理解的?相关推荐

  1. java中的多态有哪些_简单了解Java中多态的基础知识

    一.多态 多态分为两种:(1)引用的多态.(2)方法的多态 引用的多态: 父类的引用可以指向本类的对象: 父类的引用可以指向子类的对象: 注意:子类的对象不可以指向父类的对象,如下图所示 方法的多态: ...

  2. python运用在大数据中精准生活_在大数据中精准生活阅读理解答案

    在大数据中精准生活阅读理解答案 ①万物皆互联,无处不计算.因为互联网.手机.无线传感器的普及,实时监测.远程协作.SOHO工作.数据管理已成为平常之事,信息像水电一样通过网络供应汩汩传输,计算机上有形 ...

  3. python怎么求指数_求指数 python

    softmax用于多分类过程中最后一层,将多个神经元的输出,映射到(0, 1)区间内,可以看成概率来理解,从而来进行多分类! softmax函数如下: 更形象的如下图表示: softmax 直白来说就 ...

  4. python实现数据可视化_使用Matplotib python实现数据可视化

    python实现数据可视化 I Feel: 我觉得: In today's digital world data has become as important as air. Machines &a ...

  5. python适用于哪些芯片_五年Python三大秘诀!日常生活不可或缺的秘密武器

    EDA365欢迎您登录! 您需要 登录 才可以下载或查看,没有帐号?注册 x 本帖最后由 Ber_thaw99 于 2020-12-28 14:07 编辑' P& t5 n# [5 J) Y& ...

  6. python展开函数方法_逐步展开Python详细教学—Python语法

    Python语法–在Python世界迈出第一步 我们已经拥有了许多的编程语言,而且都有自己的特色,但是一种语言的独特之处在于它的特性.最终,是它的特点让它被选中或通过项目.因此,在开始更深入的Pyth ...

  7. python的执行过程_在交互式环境中执行Python程序过程详解

    前言 相信接触过Python的伙伴们都知道运行Python脚本程序的方式有多种,目前主要的方式有:交互式环境运行.命令行窗口运行.开发工具上运行等,其中在不同的操作平台上还互不相同.今天,小编讲些Py ...

  8. python数据科学手册_小白入门Python数据科学

    前言 本文讲解了从零开始学习Python数据科学的全过程,涵盖各种工具和方法 你将会学习到如何使用python做基本的数据分析 你还可以了解机器学习算法的原理和使用 说明 先说一段题外话.我是一名数据 ...

  9. 初识python评课稿_开平方函数 python

    信息举报 时间:2021-02-05 本页为您甄选多篇描写开平方函数 python,开平方函数 python精选,开平方函数 python大全,有议论,叙事 ,想象等形式.文章字数有400字.600字 ...

  10. python办公自动化博客_自动化办公 Python 操控 Word

    虽然Word不好用, 但还必须得用它, python-docx是专门用于编辑Word文档的一个工具库, 它有两大用途, 自动化生成word文档 and 自动化修改文档 python word 1. 自 ...

最新文章

  1. Envoy源码分析之Dispatcher
  2. win2008 mysql优化_SQL server 2008 数据库优化常用脚本
  3. Spring JDBC-自增键和行集RowSet
  4. python相关工作岗位_西安掌握Python有哪些工作岗位能够选择
  5. ST_LINK/V2 SWIM和SWD、JTAG下载口说明
  6. python 持续集成 教程_jenkins+python自动化测试持续集成教程
  7. java colormodel_ColorModel
  8. 使用 C# 编程对 RTF 文档进行操作 [转载]
  9. 泡泡网 前有古人后有来者! 胶水处理器回顾
  10. 3D帧间匹配-----剔除动态障碍物
  11. [转载]《澄明之境》:投资是一种信仰
  12. Backstepping反步法控制四旋翼无人机(2)
  13. 在区块链底下,个人自由和隐私该如何生存?
  14. Mac下安装Maven
  15. AGI (Analytical Graphics Inc.)
  16. 前端取值的方式(ModelMap)
  17. 【python小作业】编写函数,接收一个任意字符串,返回其中最长的数字字串。要求使用正则表达式。
  18. TopCoder介绍
  19. 三个等号和二个等号的区别是
  20. 感觉这么多年喝的鸡汤都白补了,我想静静!

热门文章

  1. [状压dp][剪枝搜索] 洛谷 P2831 愤怒的小鸟
  2. Spring Boot和Dubbo整合
  3. SpringMVC:学习笔记(2)——RequestMapping及请求映射
  4. php函数 call_user_func
  5. NOD32 V5 企业版部署方案
  6. [转]Windows Shell 编程 第五章 【来源:http://blog.csdn.net/wangqiulin123456/article/details/7987939】...
  7. Node.js调试工具安装使用
  8. Javascript浏览器事件(上)
  9. ASP.NET教程4
  10. 如何进行影像建库及做ArcGIS Server Cache