码迷,mamicode.com
首页 > 其他好文 > 详细

魔法方法

时间:2015-02-05 19:58:04      阅读:219      评论:0      收藏:0      [点我收藏+]

标签:

 __str__ : print 对象

 __repr__: repr(对象)

 __iter__: 如果一个类想被用于for ... in循环,类似list或tuple那样,就必须实现一个__iter__()方法,该方法返回一个迭代对象,然后,Python的for循环就会不断调用该迭代对象的next()方法拿到循环的下一个值,直到遇到StopIteration错误时退出循环。

__getitem__

__setitem__

__delitem__   #http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/0013946328809098c1be08a2c7e4319bd60269f62be04fa000

>>> class A(object):
    def __init__(self):
        self.menu={}
    def __getitem__(self,n):
        return self.menu.get(n,None)
    def __setitem__(self,key,value):
        self.menu[key]=value
    def __delitem__(self,key):
        del self.menu[key]

        
>>> a=A()
>>> a[1]=1
>>> del a[1]
>>> a[1]
>>> a[1]=hello
>>> a[1]
hello

__call__:  实例() 

 

魔法方法

标签:

原文地址:http://www.cnblogs.com/Citizen/p/4275434.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!