首页 > 其他 > 详细

Magic Method

时间:2019-08-25 18:03:47      阅读:105      评论:0      收藏:0      [点我收藏+]

是什么
它是python面向对象的一整套方法 , 从对象的建立到属性的访问 , 到对运算符的支持 , 对特殊语法的支持
形式
方法名前后后两个_ , 如 : def __init__(self):
2.2 对象的创建与初始化
对象实例化的过程
创建类的对象 : def __new__(cls)
初始化对象 : def __init__(self)
new方法在调用init方法之前被调用 , 返回一个类的初始对象 , 可以进行重写 , 但是要返回对象 , cls表示当前类
回收对象
def __del__() : 实际并不会调用这个方法进行回收 , python的回收机制会自动调用此方法进行回收
实例
# 首先调用new方法 , 用于返回自身的一个对象 , 然后将对象交给init方法
class Program(object):

def __new__(cls, *args, **kwargs):
print(‘call_new_method‘)
print(args)
return super(Program, cls).__new__(http://www.my516.com)

def __init__(self, name, age, language):
print(‘call_init_method‘)
self.name = name
self.age = age
self.language = language


if __name__ == ‘__main__‘:
program = Program(‘John‘, 22, ‘python‘)
print(program.__dict__)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
对于*args与**kwargs参数的含义详见*args与**kwargs
————————————————

Magic Method

原文:https://www.cnblogs.com/liyanyan665/p/11408547.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!