随笔分类 - 高级Python
摘要:序列是Python中非常重要的协议!是可迭代的! 序列的分类: 序列的协议是放在 from collections import abc的__all__里面的“Sequence”和“MutableSequence” 里面collection方法继承了 Sized, Iterable, Contain
阅读全文
摘要:类方法比静态方法好的地方就是:静态方法return时,调用的时候必须与原类名相同。而类方法如果有返回值,就不用与原类名字相同。一般用cls代替。(当然其他的名字也可以) 这里值得注意的是为什么最后返回值是4而不是123。因为1234按照顺序押入栈中后,取最上面的值,所以返回的是4 使用with 语句
阅读全文
摘要:如果多个类继承父类,然后又被多个类继承这种复杂的问题,可以使用 mro方法 例如: python3 主要使用的是C3算法,能够自适应深度查找和广度查找 另外: 在子类继承多个父类的时候,同时父类也有继承关系的时候,这个时候使用super()方法并不是继承的就是父类,而是按照__mro__方法的顺序,
阅读全文
摘要:注意: 如果输入a.aa = 100,再输出a.aa 和A.aa a.aa = 100,A.aa= 1 因为a.aa在实例中增加了一个aa属性,然后输出a.aa会先在实例自己里面找到,就输出a.aa 而没有改变模板对象属性A.aa的值
阅读全文
摘要:抽象基类不同于普通的父类。 普通父类,一般子类会直接继承。 抽象基类是在设计基类时就规定了子类如果继承该基类,必须实现的方法。 如果子类没有实现抽象基类实现的方法,那么子类在实例化的时候就会报错,提示没有实现规定的方法。而不是在调用的时候再报错。 具体例子: 最后三个类会实现voice方法,但是在调
阅读全文