日志
info:正常信息输出
debug:调试信息
warning:警告信息
error:报错信息
自定义装饰器
语法规则:
def 第一个函数(接收原有函数本体的参数):
def 第二个函数():
代码块,在原有函数之前调用
原有函数的调用
代码块,在原有函数之后调用
return 第二个函数的本体
def decorator(fun_name):
def wrapper():
print('在原有的fun函数之前')
fun_name() #fun_name == fun()
print('在原有fun函数之后')
return wapper
@decorator
def fun():
print('fun函数执行')
#调用
fun()
装饰器传参
原有函数的参数传递给装饰器的内置函数,所以需要给内置函数进行参数设定用来接收
如果内置函数又调用了原有函数,还需要给原有函数传参(fun_name(name,age))
def decorator(fun_name):
def wrapper(name,age):
print('在原有的fun函数之前')
fun_name(name,age) #fun_name == fun()
print('在原有fun函数之后')
return wapper
@decorator
def fun(name,age):
print('fun函数执行')
#调用
fun(name = '张三',age = 9)
模块
包(package):就是python的文件夹
模块(module):就是python .py文件
文件读取
文件读取方式:
r 读
w 写(覆盖写入)
a 追加写入(在原有的内容之后,进行追加写入)
语法规则:
file = open(‘文件路径’,encoding = ‘编码格式’,mode = ‘读取方式’)