【python入门到精通】python面向对象super用法

简介: 【python入门到精通】python面向对象super用法

🚀 作者 :“大数据小禅”


🚀 粉丝福利 :加入小禅的大数据社群


🚀 欢迎小伙伴们 点赞👍、收藏⭐、留言💬


子类有自己构造的时候会自动去覆盖父类的一个方法,即两个类上一个类有init构造,作为父类,另一个类作为子类去继承,子类如果没有定义init方法,子类的构造就不会被父类覆盖,但是,如果子类定义了自己的init构造方法,那么就会覆盖掉父类的方法,总的来说就是子类自己写了构造方法init就不会去调用父类的init构造方法了,而是会覆盖。上一篇博文那个波斯猫的例子就是一个典范,在子类实例化调用父类init里面的关键字参数的值可以打印,而父类中在别的函数定义的关键词参数则不可以打印,而打印除init类中的其他关键字参数也没有必要,因为调用的时候你可以赋值。在上一篇博文中字子类面前充定义init构造函数,那么父类构造中定义的全部关键字参数将全部失效。


super的作用及用法:

子类的构造里面要调用父类的一个构造又不被覆盖的话就要用到super了


调用父类构造的第一种方法


class Animal:
    def __init__(self,name):
        self.name=name
class Dog(Animal):
  def __init__(self):
         Animal.__init__(self,"dog")
         print("dog")
dog=Dog()
print(dog.__dict__)
输出:dog {'name':'dog'}

image.png

class Animal:
    def __init__(self,name):
        self.name=name
class Dog(Animal):
  def __init__(self):
         super(Dog,self).__init__("dog")
         print("dog")
dog=Dog()
print(dog.__dict__)
print(dog.name)
输出:
dog
{'name': 'dog'}
dog

image.png


相关文章
|
27天前
|
API 数据安全/隐私保护 开发者
Python自定义异常:从入门到实践的轻松指南
在Python开发中,自定义异常能提升错误处理的精准度与代码可维护性。本文通过银行系统、电商库存等实例,详解如何创建和使用自定义异常,涵盖异常基础、进阶技巧、最佳实践与真实场景应用,助你写出更专业、易调试的代码。
58 0
|
29天前
|
IDE 开发工具 数据安全/隐私保护
Python循环嵌套:从入门到实战的完整指南
循环嵌套是Python中处理多维数据和复杂逻辑的重要工具。本文通过实例讲解嵌套循环的基本用法、常见组合、性能优化技巧及实战应用,帮助开发者掌握其核心思想,避免常见错误,并探索替代方案与进阶方向。
76 0
|
3月前
|
Python
Python字符串格式化利器:f-strings入门指南
Python字符串格式化利器:f-strings入门指南
167 80
|
12天前
|
Go 调度 Python
Golang协程和Python协程用法上的那些“不一样”
本文对比了 Python 和 Go 语言中协程的区别,重点分析了调度机制和执行方式的不同。Go 的协程(goroutine)由运行时自动调度,启动后立即执行;而 Python 协程需通过 await 显式调度,依赖事件循环。文中通过代码示例展示了两种协程的实际运行效果。
|
30天前
|
监控 Linux 数据安全/隐私保护
Python实现Word转PDF全攻略:从入门到实战
在数字化办公中,Python实现Word转PDF自动化,可大幅提升处理效率,解决格式兼容问题。本文详解五种主流方案,包括跨平台的docx2pdf、Windows原生的pywin32、服务器部署首选的LibreOffice命令行、企业级的Aspose.Words,以及轻量级的python-docx+pdfkit组合。每种方案均提供核心代码与适用场景,并涵盖中文字体处理、表格优化、批量进度监控等实用技巧,助力高效办公自动化。
224 0
|
2月前
|
数据采集 分布式计算 大数据
不会Python,还敢说搞大数据?一文带你入门大数据编程的“硬核”真相
不会Python,还敢说搞大数据?一文带你入门大数据编程的“硬核”真相
71 1
|
3月前
|
NoSQL MongoDB 开发者
Python与MongoDB的亲密接触:从入门到实战的代码指南
本文详细介绍了Python与MongoDB结合使用的实战技巧,涵盖环境搭建、连接管理、CRUD操作、高级查询、索引优化、事务处理及性能调优等内容。通过15个代码片段,从基础到进阶逐步解析,帮助开发者掌握这对黄金组合的核心技能。内容包括文档结构设计、批量操作优化、聚合管道应用等实用场景,适合希望高效处理非结构化数据的开发者学习参考。
181 0
|
4月前
|
人工智能 数据库连接 API
掌握Python的高级用法:技巧、技术和实用性示例
本文分享了Python的高级用法,包括生成器、装饰器、上下文管理器、元类和并发编程等。生成器通过`yield`实现懒加载序列;装饰器用于增强函数功能,如添加日志或性能分析;上下文管理器借助`with`语句管理资源;元类动态定制类行为;并发编程利用`threading`和`asyncio`库提升任务执行效率。掌握这些高级概念可优化代码质量,解决复杂问题,提高程序性能与可维护性。
|
4月前
|
数据管理 开发者 Python
揭秘Python的__init__.py:从入门到精通的包管理艺术
__init__.py是Python包管理中的核心文件,既是包的身份标识,也是模块化设计的关键。本文从其历史演进、核心功能(如初始化、模块曝光控制和延迟加载)、高级应用场景(如兼容性适配、类型提示和插件架构)到最佳实践与常见陷阱,全面解析了__init__.py的作用与使用技巧。通过合理设计,开发者可构建优雅高效的包结构,助力Python代码质量提升。
351 10

推荐镜像

更多