python3 类的构造器 __init__

本文介绍了Python3中类的构造器`__init__`方法,阐述了在实例化过程中如何自动调用该方法,并强调`self`参数在构造器中的重要性。同时提到,在创建类实例时,构造器的参数必须提供,而`self`参数则会自动传递,无需手动传入。此外,`__init__`方法内的内容可以被类内的其他方法调用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

类的构造器 __init__

实例化的时候,会自动调用 __init__ 方法,可以在 __init__ 构造器内创建这个类必须使用的参数。

#类定义
class devops():

    # 定义基本属性
    ops = ['Citizen_Wang', 'Bob_Zhou']

    # 定义方法
    def hello(self):
        print('Hello my name is %s and i am %d yeard old, i am a %s' %(self.name, self.age, self.sex))


    # 定义构造方法构造器
    def __init__(self, name, age, sex):
        self.name = name
        self.age = age
        self.sex = sex

# 实例化 类
a = devops('Citizen_Wang', 21, 'man')

# 访问类的属性 ops
print(a.ops)

# 访问类的方法 hello 函数
a.hello()

构造器里面的 self 必不可少

调用构造器的时候,实例化的时候,构造器内的参数,必不可少,self 参数无需传入。

__init__ 内的方法,可以在 class 里面,被其他的方法调用

### Python 构造方法 `__init__` 的基本用法 #### 定义与功能 在Python中,`__init__` 是一个特殊的实例方法,在创建的新实例时由解释器自动调用。此方法的主要目的是初始化新创建的对象,即设置其属性和其他内部状态[^2]。 #### 基本语法结构 定义带有参数的构造函数如下所示: ```python class ClassName: def __init__(self, param1, param2): self.attribute1 = param1 self.attribute2 = param2 ``` 这里的关键点在于使用双下划线包围起来的名字 `__init__` ,以及通过 `self` 参数访问当前正在被构建的对象实例[^1]。 #### 实际应用案例 下面给出具体的例子展示如何利用 `__init__` 方法给定初值: ```python >>> class Person: ... def __init__(self, name, age): ... self.name = name ... self.age = age ... >>> person_instance = Person('Alice', 30) >>> print(person_instance.name) Alice >>> print(person_instance.age) 30 ``` 上述代码片段展示了怎样在一个名为 `Person` 的里声明了一个接受两个外部传入参数 (`name`, `age`) 的构造函数,并且这些参数用来设定该实例的相关属性[^3]。 #### 默认参数支持 如果希望某些成员变量拥有默认值,则可以在定义 `__init__` 函数的时候为其指定默认参数值: ```python >>> class Car: ... def __init__(self, brand='Unknown'): ... self.brand = brand ... >>> my_car = Car() >>> another_car = Car(brand="Toyota") >>> print(my_car.brand) Unknown >>> print(another_car.brand) Toyota ``` 这样即使不提供全部所需的信息也能成功创建对象并赋予合理的缺省配置。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值