简单了解Python多态与属性运行原理

 更新时间:2020年06月15日 10:31:08   作者:鸡龟骨滚羹  
这篇文章主要介绍了简单了解Python多态与属性运行原理,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

1.多态是指传入不同的对象,产生不同的结果

多态指的是一类事物有多种形态(一个抽象类有多个子类,因而多态的概念依赖于继承)

定义:多态是一种使用对象的方法,子类重写父类方法,调用不同子类对象的父类方法,可以产生不同的执行结果

好处:调用灵活,有了多态,更容易编写出通用的代码。

代码展示:

class Dog(object):
  def work(self):
    print('指哪打哪')

class ArmyDog(Dog):
  def work(self):
    print('追击敌人')
class DrugDog(Dog):
  def work(self):
    print('追查毒品')

class Person(object):
  def work_with_dog(self, dog):
    dog.work()
ad = ArmyDog()
dd = DrugDog()
daqiu = Person()
daqiu.work_with_dog(ad)
daqiu.work_with_dog(dd)

2.类属性就是类对象所拥有的属性,它被该类的所有实例对象所共有

类属性可以使用类对象或实例对象访问。

例如:

class Dog(object):
  tooth = 10
wangcai = Dog()
xiaohei = Dog()
print(Dog.tooth)
print(wangcai.tooth)
print(xiaohei.tooth)

得出的结果都为:10

记录的某项数据始终保持一致时,定义类属性

实例属性要求每个对象为其单独开辟一份内存空间来记录数据,而类属性为全类所共有,仅占用一份内存,更加节省内存空间。

3.修改类属性

类属性只能通过类对象修改,不能通过实例对象修改,如果通过实例对象修改类属性,表示的是创建了一个实例属性

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Python使用tkinter制作在线翻译软件

    Python使用tkinter制作在线翻译软件

    这篇文章主要为大家详细介绍了Python使用tkinter制作在线翻译软件,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-02-02
  • Python绘制3D图形

    Python绘制3D图形

    这篇文章主要介绍了Python绘制3D图形,希望本文的内容对大家的学习或者工作具有一定的参考学习价值
    2018-05-05
  • 用Python实现屏幕截图详解

    用Python实现屏幕截图详解

    大家好,本篇文章主要讲的是用Python实现屏幕截图详解,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2022-01-01
  • jupyter 使用Pillow包显示图像时inline显示方式

    jupyter 使用Pillow包显示图像时inline显示方式

    这篇文章主要介绍了jupyter 使用Pillow包显示图像时inline显示方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04
  • python中对信号的处理详解

    python中对信号的处理详解

    这篇文章主要给大家介绍了关于python中对信号处理的相关资料, 计算机借助信号来接收和发送各种命令,操作系统针对其编程要接收或生成的每种命令列出了至少一个信号,需要的朋友可以参考下
    2021-07-07
  • DjangoWeb使用Datatable进行后端分页的实现

    DjangoWeb使用Datatable进行后端分页的实现

    这篇文章主要介绍了DjangoWeb使用Datatable进行后端分页的实现,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-05-05
  • Python word2vec训练词向量实例分析讲解

    Python word2vec训练词向量实例分析讲解

    这篇文章主要介绍了Python word2vec训练词向量实例分析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧
    2022-12-12
  • python实现将内容分行输出

    python实现将内容分行输出

    本文给大家分享的是使用python实现将一行里的内容进行分行输出,一共给出了四种方法,小伙伴们可以参考下
    2015-11-11
  • 从入门到精通:玩转Python Fire库

    从入门到精通:玩转Python Fire库

    想快速打造属于你的Python GUI应用吗?抛开复杂的代码,用Python Fire库就能轻松实现!本指南将引领你从零起步,驾驭Python Fire的强大功能,让编程既简单又高效,准备好了吗?让我们开始玩转Python Fire,开启你的编程冒险吧!
    2024-02-02
  • 详解Python中Pyyaml模块的使用

    详解Python中Pyyaml模块的使用

    这篇文章主要介绍了Python中Pyyaml模块的使用,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-10-10

最新评论