包
1.什么是包?
包是模块的一种形式,包的本质就是一个含有__init__.py文件的文件夹
2.为什么要有包?
提高程序的结构性和可维护性
3.如何使用包?
导入包就是在导包下的__init__.py
方法:import……
from …… import……
主要的问题:
1.包内所有的文件都是被导入使用的,而不是被直接运行的
2.包内部模块之间的导入可以使用绝对导入(以包的根目录为基准)与相对导入(以当前被导入模块所在的目录为基准),推荐使用相对导入
3.当前文件是执行文件时,无法在该文件内使用相对导入的语法
只有在文件被当作模块导入时,该文件内才能使用相对导入的语法
4.凡是在导入时带点的,点的左边都必须是一个包
logging模块
logging的五个日志级别:
import logging
logging.debug('调试debug')
logging.info('消息info')
logging.warning('警告warn')
logging.error('错误error')
logging.critical('严重critical')
格式:
%(name)s:Logger的名字,并非用户名,详细查看
%(levelno)s:数字形式的日志级别
%(levelname)s:文本形式的日志级别
%(pathname)s:调用日志输出函数的模块的完整路径名,可能没有
%(filename)s:调用日志输出函数的模块的文件名
%(module)s:调用日志输出函数的模块名
%(funcName)s:调用日志输出函数的函数名
%(lineno)d:调用日志输出函数的语句所在的代码行
%(created)f:当前时间,用UNIX标准的表示时间的浮 点数表示
%(relativeCreated)d:输出日志信息时的,自Logger创建以 来的毫秒数
%(asctime)s:字符串形式的当前时间。默认格式是 “2003-07-08 16:49:45,896”。逗号后面的是毫秒
%(thread)d:线程ID。可能没有 %(threadName)s:线程名。可能没有
%(process)d:进程ID。可能没有 %(message)s:用户输出的消息
logging模块的四个对象:
logger:产生日志的对象
filter:过滤日志的对象
Handler:接收日志然后控制打印到不同的地方:
FileHandler用来打印到文件中
StreamHandler用来打印到终端
formatter对象:可以定制不同的日志格式对象,然后绑定给不同的Handler对象使用,以此来控制不同的Handler的日志格式
1.什么是包?
包是模块的一种形式,包的本质就是一个含有__init__.py文件的文件夹
2.为什么要有包?
提高程序的结构性和可维护性
3.如何使用包?
导入包就是在导包下的__init__.py
方法:import……
from …… import……
主要的问题:
1.包内所有的文件都是被导入使用的,而不是被直接运行的
2.包内部模块之间的导入可以使用绝对导入(以包的根目录为基准)与相对导入(以当前被导入模块所在的目录为基准),推荐使用相对导入
3.当前文件是执行文件时,无法在该文件内使用相对导入的语法
只有在文件被当作模块导入时,该文件内才能使用相对导入的语法
4.凡是在导入时带点的,点的左边都必须是一个包
logging模块
logging的五个日志级别:
import logging
logging.debug('调试debug')
logging.info('消息info')
logging.warning('警告warn')
logging.error('错误error')
logging.critical('严重critical')
格式:
%(name)s:Logger的名字,并非用户名,详细查看
%(levelno)s:数字形式的日志级别
%(levelname)s:文本形式的日志级别
%(pathname)s:调用日志输出函数的模块的完整路径名,可能没有
%(filename)s:调用日志输出函数的模块的文件名
%(module)s:调用日志输出函数的模块名
%(funcName)s:调用日志输出函数的函数名
%(lineno)d:调用日志输出函数的语句所在的代码行
%(created)f:当前时间,用UNIX标准的表示时间的浮 点数表示
%(relativeCreated)d:输出日志信息时的,自Logger创建以 来的毫秒数
%(asctime)s:字符串形式的当前时间。默认格式是 “2003-07-08 16:49:45,896”。逗号后面的是毫秒
%(thread)d:线程ID。可能没有 %(threadName)s:线程名。可能没有
%(process)d:进程ID。可能没有 %(message)s:用户输出的消息
logging模块的四个对象:
logger:产生日志的对象
filter:过滤日志的对象
Handler:接收日志然后控制打印到不同的地方:
FileHandler用来打印到文件中
StreamHandler用来打印到终端
formatter对象:可以定制不同的日志格式对象,然后绑定给不同的Handler对象使用,以此来控制不同的Handler的日志格式