Python __init__() 方法和super()函数

2024-08-26 01:20
文章标签 python init 函数 方法 super

本文主要是介绍Python __init__() 方法和super()函数,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

    • `__init__() `方法
    • `super() `函数

__init__() 方法

在Python中,__init__函数是一个特殊的方法,通常称为初始化方法或构造器。它在创建类的新实例时自动调用,用于初始化对象的状态。

class Car:def __init__(self, manufacture, model, year):self.make = manufacture  # 制造商self.model = model  # 型号self.year = year   # 年份# 创建Car类的实例
my_car = Car("Toyota", "Corolla", 2020)print(my_car.manufacture)  # 输出: Toyota
print(my_car.model) # 输出: Corolla
print(my_car.year)  # 输出: 2020


super() 函数

super() 函数是用于调用父类(超类)的一个方法,super() 是用来解决多重继承问题的。当你在派生类中重写方法时,你可能想要调用父类中的相同方法,这时就可以使用 super() 来实现。

使用 super() 初始化父类

class Parent:def __init__(self, name):print("Parent's name", name)class Child(Parent):def __init__(self, parent_name, child_name):super().__init__(parent_name)  # 调用父类的__init__方法print("Child's name", child_name)# 创建Child类的实例
child_instance = Child("Alice", "Amy")

使用super()调用父类方法

class Vehicle:def start(self):print("Vehicle has started")class Car(Vehicle):def start(self):print("Car engine is on")super().start()  # 调用 Vehicle 类的 start 方法my_car = Car()
car.start()
# 输出:
# Car engine is on
# Vehicle has started

多继承中的super()

class Animal:def make_sound(self):print("Animal makes a sound")class Dog(Animal):def make_sound(self):super().make_sound()  # 调用 Animal 类的 make_sound 方法print("Dog barks")class SuperDog(Dog):def make_sound(self):super().make_sound()  # 调用 Dog 类的 make_sound 方法print("SuperDog howls")super_dog = SuperDog()
super_dog.make_sound()
# 输出:
# Animal makes a sound
# Dog barks
# SuperDog howls


reference
https://www.runoob.com/python/python-func-super.html
https://blog.csdn.net/baidu_22713341/article/details/138959146

这篇关于Python __init__() 方法和super()函数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1107144

相关文章

使用Python实现IP地址和端口状态检测与监控

《使用Python实现IP地址和端口状态检测与监控》在网络运维和服务器管理中,IP地址和端口的可用性监控是保障业务连续性的基础需求,本文将带你用Python从零打造一个高可用IP监控系统,感兴趣的小伙... 目录概述:为什么需要IP监控系统使用步骤说明1. 环境准备2. 系统部署3. 核心功能配置系统效果展

基于Python打造一个智能单词管理神器

《基于Python打造一个智能单词管理神器》这篇文章主要为大家详细介绍了如何使用Python打造一个智能单词管理神器,从查询到导出的一站式解决,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 项目概述:为什么需要这个工具2. 环境搭建与快速入门2.1 环境要求2.2 首次运行配置3. 核心功能使用指

Python实现微信自动锁定工具

《Python实现微信自动锁定工具》在数字化办公时代,微信已成为职场沟通的重要工具,但临时离开时忘记锁屏可能导致敏感信息泄露,下面我们就来看看如何使用Python打造一个微信自动锁定工具吧... 目录引言:当微信隐私遇到自动化守护效果展示核心功能全景图技术亮点深度解析1. 无操作检测引擎2. 微信路径智能获

Python中pywin32 常用窗口操作的实现

《Python中pywin32常用窗口操作的实现》本文主要介绍了Python中pywin32常用窗口操作的实现,pywin32主要的作用是供Python开发者快速调用WindowsAPI的一个... 目录获取窗口句柄获取最前端窗口句柄获取指定坐标处的窗口根据窗口的完整标题匹配获取句柄根据窗口的类别匹配获取句

利用Python打造一个Excel记账模板

《利用Python打造一个Excel记账模板》这篇文章主要为大家详细介绍了如何使用Python打造一个超实用的Excel记账模板,可以帮助大家高效管理财务,迈向财富自由之路,感兴趣的小伙伴快跟随小编一... 目录设置预算百分比超支标红预警记账模板功能介绍基础记账预算管理可视化分析摸鱼时间理财法碎片时间利用财

Java 中的 @SneakyThrows 注解使用方法(简化异常处理的利与弊)

《Java中的@SneakyThrows注解使用方法(简化异常处理的利与弊)》为了简化异常处理,Lombok提供了一个强大的注解@SneakyThrows,本文将详细介绍@SneakyThro... 目录1. @SneakyThrows 简介 1.1 什么是 Lombok?2. @SneakyThrows

Python中的Walrus运算符分析示例详解

《Python中的Walrus运算符分析示例详解》Python中的Walrus运算符(:=)是Python3.8引入的一个新特性,允许在表达式中同时赋值和返回值,它的核心作用是减少重复计算,提升代码简... 目录1. 在循环中避免重复计算2. 在条件判断中同时赋值变量3. 在列表推导式或字典推导式中简化逻辑

判断PyTorch是GPU版还是CPU版的方法小结

《判断PyTorch是GPU版还是CPU版的方法小结》PyTorch作为当前最流行的深度学习框架之一,支持在CPU和GPU(NVIDIACUDA)上运行,所以对于深度学习开发者来说,正确识别PyTor... 目录前言为什么需要区分GPU和CPU版本?性能差异硬件要求如何检查PyTorch版本?方法1:使用命

python处理带有时区的日期和时间数据

《python处理带有时区的日期和时间数据》这篇文章主要为大家详细介绍了如何在Python中使用pytz库处理时区信息,包括获取当前UTC时间,转换为特定时区等,有需要的小伙伴可以参考一下... 目录时区基本信息python datetime使用timezonepandas处理时区数据知识延展时区基本信息

Python位移操作和位运算的实现示例

《Python位移操作和位运算的实现示例》本文主要介绍了Python位移操作和位运算的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录1. 位移操作1.1 左移操作 (<<)1.2 右移操作 (>>)注意事项:2. 位运算2.1