- with语句
a.需要处理文件数据的时候可以使用,解决两个问题:
1.显示打开文件,就需要手动关闭
2.读取文件数据异常需要处理
而with语句很优雅地解决了这些问题
b.背后的一些机制:
[语法]: with context_expr as var:
with-body
1.执行上下文表达式(context_expr)来获得一个上下文管理器,上下文管理器提供一个上下文对象
2.获得上下文对象后,调用__enter__()方法,将__enter__()返回值赋给as后面的变量
3.with语句结束,调用__exit__()方法
c.自定义支持with语句的对象:
实现__enter__()和__exit__()方法
- 匿名函数
[语法]: lambda x: x*x
即没有名字的函数
- 装饰器
功能:在不改动其他函数代码的情况下增加额外功能
应用场景:插入日志,权限检验