python类的内置方法_类的内置方法(魔法方法)

本文详细介绍了Python类的内置方法,包括__init__、__new__、__getattr__、__getattribute__、__setattr__、__call__、__str__、__getitem__和__setitem__等魔法方法的触发条件和使用示例,帮助理解这些方法在类实例化、属性访问、对象调用等场景中的重要作用。
摘要由CSDN通过智能技术生成

9ed1fb28838244499b1c192029321ca5.png

类的内置方法(魔法方法)

凡是在类内部定义,以__开头__结尾的方法,都是类的内置方法,也称之为魔法方法

注意:类的内置方法,会在某种条件满足下自动触发

常用内置方法:

1) __init__:在调用类时自动触发,通过object产生的空对象自动调用__init__()

2) __new__:在__init__触发前自动触发,调用该类时,内部会通过__new__产生一个新的对象

3) __getattr__:在 "对象.属性" 获取属性时,若 "没有该属性" 时触发

4) __getattribute__:在 "对象.属性" 获取属性时,"无论有没有该属性" 都会触发,默认return一个None

5) __setattr__:当 "对象.属性 = 属性值" ,"添加或修改属性" 时触发

6) __call__:在调用对象 "对象 + ()" 时触发

7) __str__:在 "打印对象" 时触发

8)__getitem__:在对象通过 "对象[key]" 获取属性时触发

9) __setitem__:在对象通过 "对象[key]=value值" 获取属性时触发

注意:1、python3中的类默认都是新式类,默认继承object类

2、魔方方法与在类中的位置无关

1、__init__

在调用类时自动触发,通过object类产生的空对象自动调用__init__()

class Demo(object): #python3中类默认继承object类(因此python3中的类都是新式类,这里继承的object类可写可不写)

#__init__:在调用类时自动触发

def __init__(self):print("此处是__init__方法的执行..")

Demo()

执行结果:

此处是__init__方法的执行..

2、__new__

在__init__触发前自动触发,调用该类时,内部会通过

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值