主要内容:
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 模块给你提供的就是一些特殊的数据类型.