美文网首页Python全栈
25.Python之多态和鸭子类型

25.Python之多态和鸭子类型

作者: 免跪姓黄 | 来源:发表于2020-03-09 01:26 被阅读0次

多态(是一种概念)

  • 在Python中一切皆对象,处处是多态。
  • 多态指的是同一种事物的多种形态,在程序中用继承可以表现出多态。
  • 多态性:可以在不考虑对象具体类的形况下直接参考基类的标准使用对象。

鸭子类型

  • Duck typing 这个概念来源于美国印第安纳州的诗人詹姆斯·惠特科姆·莱利(James Whitcomb Riley,1849-1916)的诗句:" When I see a bird that walks like a duck and swims like a duck and quacks like a duck, I call that bird a duck." 翻译:“当看到一只鸟走起来像鸭子、游泳起来像鸭子、叫起来也像鸭子,那么这只鸟就可以被称为鸭子。”
  • 在鸭子类型中,关注的不是对象的类型本身,而是它是如何使用的。"鸭子类型"像多态一样工作,但是没有继承。
  • 在Python中崇尚“鸭子类型”。所谓的“鸭子类型”可以这么理解,现在我规定,只要你会用Python写程序,你就是Python程序员,而不必去考Python认证证明你是Python程序员。比如:一个对象中只要有__iter__方法,那么这个对象就是可迭代对象;一个对象只要含有__iter__方法和__next__方法,那么这个对象就是迭代器;而不用去继承什么,证明什么,只要你符合我的标准,你就是我想要的!

相关文章

  • 25.Python之多态和鸭子类型

    多态(是一种概念) 在Python中一切皆对象,处处是多态。 多态指的是同一种事物的多种形态,在程序中用继承可以表...

  • python高级编程第一讲:深入类和对象

    1.鸭子类型和多态 多态的概念是应用于Java和C#这一类强类型语言中,而Python崇尚"鸭子类型" 所谓多态:...

  • 第四章 深入类和对象

    一. 鸭子类型和多态 鸭子类型与多态文章详解 如果一个对象实现了__getitem__方法,那python的解释器...

  • python入门系列:深入类和对象

    鸭子类型和多态 引言 在鸭子类型中,关注的不是对象的类型本身,而是它是如何使用的。 例如,在不使用鸭子类型的语言中...

  • 多态性与鸭子类型

    一,多态性 多态示例 二,鸭子类型 1,定义 2,示例

  • 多态的意义和操作过程

    多态 首先Python不支持多态,也不用支持多态,python是一种多态语言,崇尚鸭子类型。以下是维基百科中对鸭子...

  • Python进阶3

    深入类和对象 鸭子类型和多态 引言 在鸭子类型中,关注的不是对象的类型本身,而是它是如何使用的。 例如,在不使用鸭...

  • 第三章:深入类和对象

    1.鸭子类型和多态 什么是鸭子类型当一只鸟走起路来像鸭子,游泳起来像鸭子,叫起来像鸭子,就可以称这只鸟为鸭子.也就...

  • 第1章面向对象的Javascript

    面向对象的Javascript 1.1动态类型与鸭子类型 1.2多态 1.2.1一段“多态”的javascript...

  • python 鸭子类型和多态

    关于鸭子类型,在百科中是这么描述的:“鸭子类型”的语言是这么推断的:一只鸟走起来像鸭子、游起泳来像鸭子、叫起来也像...

网友评论

    本文标题:25.Python之多态和鸭子类型

    本文链接:https://www.haomeiwen.com/subject/qosedhtx.html