property属性与生成器与上下文管理器

一 定义property属性有两种方式:
装饰器方式
类属性方式
1.1装饰器方式:
@property 修饰获取值的方法
@方法名.setter 修饰设置值的方法
1.2类属性方式:
类属性 = property(获取值方法, 设置值方法)

1.3 property属性的介绍
property属性就是负责把一个方法当做属性进行使用,这样做可以简化代码使用

二 上下文管理器
一个类只要实现了__enter__()和__exit__()这个两个方法,通过该类创建的对象我们就称之为上下文管理器。

三 生成器
3.1生成器是根据算法生成数据的一种机制,每次调用生成器只生成一个值,可以节省大量内存。

3.2生成器的创建有两种方式:
生成器推导式
yield 关键字

3.3 生成器推导式:

与列表推导式类似,只不过生成器推导式使用小括号

property属性与生成器与上下文管理器

3.4 yield 关键字:

只要在def函数里面看到有 yield 关键字那么就是生成器