python从零开始--27 python基础方法重写

我们可以对下面的基础方法进行重写:

__init__ (self [,args...])  构造函数         obj = className(args)

__del__ (self) 析构函数            del obj

__repr__(self)  转化为供解释器读取的形式    repr(obj)

__str__(self) 将指转化为适于人阅读的形式    str(obj)

__cmp__(self, x)  对象比较          cmp(obj, x)   

__len__(self)                                                       len(obj)


class family(object):

    def __init__(self, *persons):
        self.family_persons = persons
        self.family_persons_number = len(persons)

    def __len__(self):
        return self.family_persons_number

    def __del__(self):
        print("完成析构")


if __name__ == "__main__":
    f1 = family(*("father", "mother", "sister", "old brother"))
    f2 = family(*("father", "mother", "boy"))
    print("这个家庭有{}口人".format(len(f1)))
    print("这个家庭有{}口人".format(len(f2)))
这个家庭有4口人
这个家庭有3口人
完成析构
完成析构



猜你喜欢

转载自blog.csdn.net/pansc2004/article/details/80365192
今日推荐