zoukankan      html  css  js  c++  java
  • logging

    print实际上是操作文件,非常耗时间,程序效率不是特别高
     
    #log 日志,管理员,服务器上做操作,消费记录,淘宝
     
    #日志:
    #给我们在内部操作的时候提供很多遍历
    #给用户提供更多的信息
    #在程序的使用的过程中,自己调试需要看的信息
    #帮助程序员排查程序的问题
    #logging模块 不会自动帮你添加日志的内容,是你自己想打印什么,你就写什么
     
     
    logging模块 分为五种模式:
    import logging
    logging.debug('debug message')  #1.debug 调试模式,级别最低
    logging.info('info message')    #2.info  显示正常信息
    logging.warning('warning message')  #3.warning 显示警告信息
    logging.error('error message')      #4.error   显示错误信息
    logging.critical('critical message') #5.critical   显示严重错误信息
     
    #返回:WARNING:root:warning message
         #ERROR:root:error message
         #CRITICAL:root:critical message
     
    #默认情况下,只显示警告及警告级别的以上信息
     
    #返回:WARNING:root:warning message
    #ERROR:root:error message
    #CRITICAL:root:critical message
     
     
     
     
    #日志 简单的配置 注意大写的地方
    # logging.basicConfig(level=logging.INFO) #level水平,basicConfig基本配置,可以理解为基本配置水平可以指定下面的某种模式,
    #                                         # 假如指定模式为DEBUG(这里必须大写level=logging.DEBUG),那么DEBUG下面的模式也会打印出来
    #                                         #如果写成INFO那下面的模式也会打印,根据指定的模式来定,只能通过level来约束下面的模式,
    #
    # logging.debug('debug message')  #1.debug 调试模式,级别最低
    # logging.info('info message')    #2.info  显示正常信息
    # logging.warning('warning message')  #3.warning 显示警告信息
    # logging.error('error message')      #4.error   显示错误信息
    # logging.critical('critical message') #5.critical   显示严重错误信息
     
    #日志 简单的配置 注意大写的地方
    # logging.basicConfig(level=logging.DEBUG,
    #                     format ='%(asctime)s    %(filename)s    [line:%(lineno)d]    %(levelname)s      %(message)s',
    #                     datefmt ='%a, %d %b %Y %H:%M:%S',
    #                     filename='userinfo.log')
    #                     # filemode='w')
    # #format, datefmts 是打用格式化的方式打印记录的一些信息asctime-->时间,filename-->文件名,lineno-->此时信息的所在行,levelname-->模式名(debug等),message-->模式下的信息.
    # #filename 输出到文件,就新建了一个文件
    # logging.debug('debug message')
    # logging.info('info message')
    # logging.warning('warning message')
    # logging.error('error message')
    # logging.critical('critical message') #message信息,是可以改变的,根据你需要打印的信息来定.
    #
     
    #日志 简单的配置最大的问题.
    #编码格式不能设置
    #不能同时输出到文件的屏幕
    #=========================================================================================================================================
     
    #配置logger对象 注意大写的地方
    #
    import logging
    # logger = logging.getLogger()                                #实例化了一个logger对象
    #                                                             # 创建一个handler,用于写入日志文件,操作文件
    # fh =  logging.FileHandler('test.log',encoding='utf-8')      # 实例化一个文件句柄,这可以理解Handler相当于是创建一个文件,试过只是用这步,写进去的非乱码的信息,经过吸星大法步骤之后变正常,FileHandler用于输出到文件
                       #创建文件是以为.log结尾
    #
    # #吸星大法,(将实例化的logger对象,和# handler 存进来
    # logger.addHandler(fh)                                       #addHandler管理往文件里输出的 ,用addHandler往文件里输出信息
    # logging.error('error message')                        #logging.error('error message'),输出你要输出的信息,信息只能是那五种模式
     
     
     
    #同样怎么输出到屏幕呢?前面俩步方法一样,后面
    # import logging
    # logger = logging.getLogger()                #实例化了一个logger对象
     
    # sh = logging.StreamHandler()                #创建一个StreamHandler用于输出到屏幕,这后面不需要加参数,可以理解为屏幕句柄
     
    # logger.addHandler(sh)                       #addHandler接受sh就将文件信息输出到屏幕
     
    # logging.warning('warning message')          #
     
    #首先创造一个logger对象,然后用FileHandler创建一个操作文件的方法,然后用addHandler放到logger对象里,使用,然后用logging.信息,就可以输出一段信息,
    # FileHandler用于输出到文件 ,StreamHandler用于输出到屏幕
  • 相关阅读:
    程序员,如何从平庸走向理想?
    【Hadoop】HA 场景下访问 HDFS JAVA API Client
    hive 和Hbase的pom文件
    wxpython多线程通信的应用-实现边录音边绘制音谱图
    wxpython多线程间通信
    LeetCode 92. ReverseLinkedII
    pip换源安装
    wxpython绘制音频
    python读取wav文件并播放[pyaudio/wave]
    Python绘制wav文件音频图(静态)[matplotlib/wave]
  • 原文地址:https://www.cnblogs.com/sunny7/p/9222506.html
Copyright © 2011-2022 走看看