方法运算符重载一

来源:互联网 发布:怎样看待网络语言暴力 编辑:程序博客网 时间:2024/06/05 19:42

列表方法重载:

source code:

class A:
    def __init__(self):
        self.header = {}
    def __len__(self):
        return len(self.header.keys())
    def __getitem__(self,attri):
        print 'call __getitem__'
        return self.header[attri]
    def __setitem__(self,attri,value):
        print 'call __setitem__'
        self.header[attri] = value
    def __delitem__(self,attri):
        print 'call __delitem__'
        del self.header[attri]
a = A()
a['sub'] = 'testing'
a['f'] = ' test.rar'
print len(a)
print a['sub']
del a['sub']
print len(a)


输出为:

call __setitem__
call __setitem__
2
call __getitem__
testing
call __delitem__
1


0 0
原创粉丝点击