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