函数运行时,先找局部变量,再找全局变量,都找不到就会报错。函数运行后,函数内的非全局变量会被释放掉。如果函数内的变量要用在函数外,则需要用global声明。如果需要使用大量的全局变量,那么使用类来编写代码会更合适。
实例Python寻找变量的顺序:LEGB原则(即就近原则),查找顺序为Local(局部变量), Enclose(上一层函数结构定义的变量), Global(全局变量), Build-in (内置变量)。变量的这种使用范围也称为变量的作用域。
类中有属性和方法。在面向对象的程序设计中,属性也叫成员变量,方法(Method)就是传统程序设计中的函数(Function)或过程(Procedure)。
类属性:不用实例化,可以直接用类名来引用,是所有的实例都会共享的属性。
类方法:classmethod不用实例化,直接用类名就可以调用的方法。
静态方法:与类无直接关系,不带self,它不能使用类中的属性和实例属性。
实例属性:实例化后才有的属性,每个实例都不同(存储在不同的内存地址中)。
实例方法:实例化后才能调用的方法。
网友评论