尽量避免使用多继承!
class C(B,A):
尽量避免使用多继承!
class C(B,A):
子类继承了父类除构造方法之外的所有成员
必须是显式的调用父类初始化方法,不然解释器不会去调用
封装 继承 多态
@property装饰器
可以将一个方法的调用方式变成属性调用。
私有方法:
def __work(self):
上面也是私有方法
e.Employee__work()
下划线开头的属性是私有的。其他为公共的。
类内部可以访问私有属性,
类外部不能直接访问私有属性。
类方法:属于类对象的方法,@classmethod
@classmethod
def 类方法名(cls)
类属性 重属于类对象的属性,也称为类变量了。
类中或者类的外面可通过类名.类变量名来读写。
类是制造对象的模具
python是面向对象的语言,编程的思想主要是针对大型软件设计而来的。将数据和操作数据相关的方法封装到类中。
eval()函数
同一行中定义函数的方法,lambda函数实际生成了一个函数对象。
lambda表达式只允许包含一个表达式,不包含复杂语句,该表达式的计算结果就是函数的返回值。
可变参数:
*param:将多个参数收集到一个“元组”对象中。
**param:讲多个参数收集到一个“字典”对象中。
参数调用时,实参默认按位置顺序传递,需要个数
浅拷贝和深拷贝:深入了解参数传递的底层原理,
不考虑子对象的内容,只是拷贝子对象的引用
全局变量和局部变量
作用域:定义的模块,在函数和类定义之外声明的变量。
全局变量降低了函数的通用性和可读性。
测试函数也是对象
形式参数 定义函数中使用
函数 可重用的程序代码块 函数时代码复用的通用机制。
创建一个函数对象,并绑定到变量名上