python学习第二十六章

主要内容:

1.logging高级

2.collections 模块

3.random模块

1.logging高级

logging基本的示例如下:

import logging
logging.basicConfig(level=logging.DEBUG,format='%(asctime)s %(filename)s (line:%(lineno)d) %(levelname)s %(message)s',filename="log.log",filemode= "w")

try:
    s = input(">>>>>>>")
    p = int(s)
except ValueError as e:
    logging.debug(e)
    logging.info(e)
    logging.warning(e)
    logging.error(e)
    logging.critical(e)

低级的有个问题,就是不能同时屏幕和文件同时输出.

高级是支持的.示例如下:

import logging
logger = logging.getLogger()   # 创建logger对象.
logger.setLevel(logging.DEBUG)

fh = logging.FileHandler("test1.log",encoding="utf-8")  #创建文件句柄
ch = logging.StreamHandler()  #产生了一个屏幕句柄

formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
fh.setFormatter(formatter)   # 设置文件的格式  (这两个按照需求可以单独设置)
ch.setFormatter(formatter)    # 设置屏幕格式
logger .addHandler(fh)    #  添加文件句柄
logger.addHandler(ch)    #添加屏幕句柄
fh.setLevel(logging.INFO)
ch.setLevel(logging.INFO)    #如果你对logger对象设置日志等级.那么文件和屏幕都设置了.
# #总开关 默认从warning开始,如果想设置分开关:必须要从他更高级:(ERROR,critical)从这来个开始.
#

2.collections 模块

collections 模块给你提供的就是一些特殊的数据类型.

猜你喜欢

转载自www.cnblogs.com/ahliucong/p/9286091.html