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

类的内置方法(魔法方法)[Python常见问题]

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

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

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

 

常用内置方法:

  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()
hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » 类的内置方法(魔法方法)