类,实例,类属性,实例属性,属性,方法,实例方法,类方法,静态方法,动态的添加类属性和实例属性,动态的添加实例方法类方法和静态方法,生成器,迭代器,可迭代,iter函数,闭包,装饰器,类装饰器
- 类:使用class编写的代码模板
- 实例(对象):类的构造方法的返回值(实例的引用)
- 类属性,实例属性:
- 属性:类中的字段
- 方法:操作属性的代码段
- 实例方法:
- 类方法:@classmethod
- 静态方法:@staticmethod
- 动态的添加类属性和实例属性:
- 动态的添加实例方法类方法和静态方法:实例使用types模块
- 生成器:(),函数+yield
- 迭代器:可以用next(如:generator)
- 可迭代:可以用for循环(如:list,tuple,set,dict,generator)
- iter()函数:将可迭代的对象转换为迭代器
- 闭包:在函数内部再定义一个函数,内部函数用到了外边函数的变量,并且外部函数将内部函数的引用返回,那么将这个函数以 及用到的一些变量称之为闭包
- 装饰器:
- 类装饰器:
对比:
1,类属性只和类相关(属于类)
2,实例属性通常定义在构造函数中
3,类可以访问类属性,不可访问实例属性
实例可以访问类属性, 可以访问实例属性
实例属性 类属性(属于类的)
1声明一个类(需要内存 存储类的信息) 此时声明类属性占一份内存1
2声明一个实例A(需要内存 存储实例A信息) 可以访问类属性可以使用内存1 需要内存2来维护实例属性
3声明一个实例B(需要内存 存储实例B的信息) 可以访问类属性可以使用内存1 需要内存3来维护实例属性
为了节省内存(多使用类属性