首页 > 编程语言 >python 构造函数

python 构造函数

时间:2024-05-30 17:02:02浏览次数:23  
标签:__ name python age Person self 构造函数

在这里插入图片描述

在Python中,构造函数是一个特殊的方法,用于在创建类的实例(对象)时自动调用,以初始化对象的属性。构造函数在类中是通过__init__方法来定义的。它的主要作用是为新创建的对象设置初始状态,即初始化对象的属性。

以下是构造函数的几个关键点:

  1. 方法名称固定:构造函数的名称必须是__init__,这是一种约定俗成的特殊方法名。
  2. 自动调用:当创建类的实例时,__init__方法会自动被调用。
  3. 初始化属性:通常在__init__方法中定义和初始化对象的属性。

让我们通过一个简单的例子来说明:

class Person:
    def __init__(self, name, age):
        self.name = name  # 初始化name属性
        self.age = age    # 初始化age属性

# 创建Person类的实例
person1 = Person("Alice", 30)

# 访问实例的属性
print(person1.name)  # 输出: Alice
print(person1.age)   # 输出: 30
  • class Person: 定义了一个名为Person的类。
  • def __init__(self, name, age): 定义了Person类的构造函数,接受nameage两个参数。
  • self.name = nameself.age = age 在构造函数中,将传入的参数值赋给实例属性nameage
  • person1 = Person("Alice", 30) 创建了一个Person类的实例,并自动调用构造函数进行初始化。

当我们创建person1实例时,构造函数__init__被自动调用,将name设置为"Alice",age设置为30。因此,我们可以通过访问实例属性person1.nameperson1.age来获取这些值。

构造函数还可以接受默认参数,以便在实例化时不必提供所有参数:

class Person:
    def __init__(self, name, age=25):
        self.name = name
        self.age = age

person2 = Person("Bob")  # 只传递name参数,age使用默认值
print(person2.name)  # 输出: Bob
print(person2.age)   # 输出: 25

age参数有一个默认值25,因此创建实例person2时只需要传递name参数。

标签:__,name,python,age,Person,self,构造函数
From: https://blog.csdn.net/u010674101/article/details/139294228

相关文章

  • Ubuntu18.04 + Caffe + python3.7 + CUDA11 + cuDNN8编译记录 转载文章 非原创
    背景这两天接手了一个在两年前基于caffe实现的交互式活体检测的项目,想要让他在python3和CUDA11的环境下运行。但是呢,caffe已经官方宣布不再继续更新,不支持最新版的cuDNN8,那需求摆在这边只好自行想办法,前前后后倒腾了两天,可算是编译成功把项目跑通了,在此记录一下自己配置辛酸史。......
  • 计算机毕业设计python-django生态评价网站系统flask框架
    网站主要使用的模式是管理员上传各地生态图片和一些土地,降雨,植被的数据,用户登录到网站上根据网站上的数据进行生态的评价,综合了多方面的想法和不同的建议,查看网站的人来说能够看到不同的想法,不局限于一种想法,也可以在网站上发表自己的看法,并作出相应的对策。采用前后端分离开发......
  • C++入门 类(构造函数 & 析构函数 & 显式调用)
    目录类的6个默认成员函数 构造函数特性函数名与类名相同无返回值(不需要写void) 无参构造函数和带参构造函数 构造函数可以重载编译器自动生成构造函数 默认构造函数 实践总结析构函数 显式调用隐式调用 特性 析构函数名是在类名前加字符~ 无参数无返......
  • python-django学院校园失物招领管理系统flask框架
    当前大多数校园失物招领信息主要是由志愿者联合会来组织开展,开展形式主要通过在公共场所填写失物招领信息以及志愿者服务公众号来传播失物招领消息,该公众号主要发布失物招领信息,学生教师需要通过到现场或者志愿者公众号去了解,这种形式主要局限于失主与拾主的联系以及失主的寻物......
  • python+django高校学生兼职信息网站设计pycharm项目flask
     自高等教育改革化,人们普遍重点观点放在了注重学生的学习能力和社会实践之上。为了满足了人们对教育的渴求,保障了人受教育的权利,各高校采取了扩招,广开大门对每位求知好学之人。随着学校人员增多,大量的求职需求也初显了出来。在信息化的时代,人们已经不像从前挨家挨户的求职,投简......
  • 在 Python 中转换为 np.array 时的内存饱和与内核重启
    在将处理过的数据转换为numpy数组时,我遇到了内存问题。我有57GB内存,但内存很快就饱和了,内核会在np.array(processed_X)处重启。以下是我的代码:importnumpyasnp导入scipy.signalfromskimage.transformimportresizefromtqdmimporttqdmdefapply_stft(signal,n......
  • 【爬虫软件】用Python开发的小红书详情批量采集工具,含笔记正文、转评赞藏等
    一、背景介绍1.1爬取目标用python开发的爬虫采集软件,可自动按笔记链接抓取笔记的详情数据。为什么有了源码还开发界面软件呢?方便不懂编程代码的小白用户使用,无需安装python,无需改代码,双击打开即用!软件界面截图:爬取结果截图:结果截图1:结果截图2:结果截图3:以上。1.2......
  • Linux有关环境搭建使用python简化操作
    我用这种方式安装过z.lua,好用;记录一些常用的api:api记录获取用户主目录home_dir=os.path.expanduser("~")获取脚本文件的绝对路径zlua_path=os.path.abspath(__file__)zlua_dir=os.path.dirname(zlua_path)构建路径字符串#构建目标文件路径target_dir=......
  • 《少年小鱼的魔法之旅——神奇的Python》,在悬疑和冒险中学会Python编程,Python启蒙入门
    ​故事简介在一个普通的城市里,生活着一个名叫小鱼的初中少年。他学习成绩在班里倒数,同学们都嘲笑他,他每天非常苦恼。一天放学回家的路上,他意外地捡到了一台黑色的笔记本电脑。他好奇地打开电脑,从此被卷入了一个神奇的魔法世界。这个世界里,编程是一种魔法咒语,能够创造出无限的奇......
  • 系统中存在多个python出现的一些问题
    问题:因为系统有好几个python.exe文件,所以在使用python的时候出现了很多问题有没有出现过一个问题就是在pycharm里面选用的是3.11的版本,然后这个pycharm下载问题太多了,就想去windows命令窗口或者是pycharm的terminal中通过whl文件下载,但是下载后却不在python3.11的lib\site-packag......