基于类继承的原理实现:

class Li(list):                              #继承标准数据类型 list
    def app(self,p_object):                  #派生出新的 append功能
        if not isinstance(p_object,int):     #添加类型判断逻辑 如果不是数字,raise手工触发一个异常
            raise TypeError("不是数字类型")
        super().append(p_object)              #super().获取到父类的一个对象,执行父类的 append方法;

    def ins(self, index, p_object):          #继承list标准数据类型,继续派生列表的insert方法
        if not isinstance(p_object,int):
            raise TypeError("必须是数字类型")
        super().insert(index,p_object )

l=Li([1,2,3])
l.app(2)
l.ins(0,222)
print(l)

基于授权

 

posted on 2017-04-24 20:00  Martin8866  阅读(315)  评论(0编辑  收藏  举报