python特殊成员函数

1.__init__():构造函数

2.__del__():析构函数

3.print(__doc__):打印描述信息

4.print(Dog.__module__):类来自的模块

5.print(d1.__class__) :对象属于哪个类

6.__call__(self, *args, **kwargs):对象(),()带位置参数或关键字参数

def __call__(self, *args, **kwargs):
print(self.name,args,kwargs) d1=Dog('lele')
d1(1,2,3,4,month=13,sex='mu')

7.__str__:以规定的格式打印 对象

print(d1)

<__main__.Dog object at 0x0000024D9871EF28>

定义__str__后:

    def __str__(self):    #以规定的格式打印 对象
return "<obj:%s>"%self.name
print(d1)

<obj:lele>

8.__getitem__,__setitem__,__delitem__:用于索引操作,如字典(Django中不想用户删除某些键,将其设为对象,然后进行索引操作)

 class C(object):
def __init__(self):
self.data={} def __getitem__(self, key):
self.data.get(key)
print('__getitem__',key) def __setitem__(self, key, value):
self.data[key]=value
print('__setitem__', key, value) def __delitem__(self, key):
self.data.pop(key)
print('__delitem__', key) obj = C() obj['k2'] = 'alex' # 自动触发执行 __setitem__
print(obj.data)
result = obj['k2'] # 自动触发执行 __getitem__
print(obj.data)
del obj['k2'] # 自动触发执行 __getitem__
print(obj.data)
上一篇:redis可执行文件说明


下一篇:2015年最有价值的30个响应式WORDPRESS主题