zoukankan      html  css  js  c++  java
  • 第十节:xml、re、logging模块

    XML模块:(用到的时候再看)
    tree=xml.parse('xmltest.xml')
    root= tree.getroot()
    print(root.tag) 打印对象的标签
    root.attrib 获取对象的属性
    root.text 获取对象的文本内容

    RE模块:
    re.findall("匹配条件","需要匹配的数据")
    . 匹配单个仍以字符
    ? 0个或者1个前面的字符
    * 匹配任意个前面的字符包含0个(shell中的正则和python中的正则有区别)
    + 匹配至少一个前面的字符
    {2} 匹配6次前面的字符
    ^ 以前面的字符开头
    $ 以前面的字符结尾
    [] 匹配[]中的一个字符 里面加^代表取反 - ^ 有特殊意义,其他符号都当成字符
    能让有意义的变得没意义,没意义的变得有意义
    d 数字
    D 非数字
    s 空格
    S 非空格
    w 字符和数字组成的字符
    W 取反
     匹配特殊字符空格$#等\
    print(re.findall("as*?","asdfdfaa"))最小平匹配,有点难理解,所体会下试下就知道了
    print(re.search("(?P<name>[a-z]+)",'assdsds').group('name'))分组匹配打印分组内容

    logging模块:
    日志级别

    # 4、日志级别
    # critical => 50
    # error => 40
    # warning => 30
    # info => 20
    # debug => 10
    import  logging
    loger=logging.getLogger("test")
    loger.setLevel(logging.DEBUG)  #loger.setLevel(10)设置全局最低的日志级别
    form = logging.Formatter('%(asctime)s-%(name)s-%(levelname)s-%(message)s') #设置日志格式
    
    fh=logging.FileHandler('test.log')  #将日志输出到文件中
    ch=logging.StreamHandler()       #将日志打印到屏幕
    
    fh.setFormatter(form)          #定义输出到文件中的日志格式
    ch.setFormatter(form)          #定义输出到屏幕的日志格式
    
    loger.addHandler(fh)          #将handler添加给logger,下同
    loger.addHandler(ch)
    
    loger.debug("debug")          #打印日志,下同
    loger.info("info")

    2020-04-16 00:36:54,577-test-DEBUG-debug
    2020-04-16 00:36:54,577-test-INFO-info

  • 相关阅读:
    关于php配置文件
    修改范围PHP_INI_SYSTEM与PHP_INI_ALL的区别
    mysql索引常见问题
    K-D TREE算法原理及实现
    Matlab K-means聚类
    Matlab 聚类分析
    Zbar 大图像分析
    Zbar -- 源码分析
    ZBar在Windows上的使用 -- ImageMagick and OpenCV
    Zbar算法流程介绍
  • 原文地址:https://www.cnblogs.com/sxdpython/p/12683367.html
Copyright © 2011-2022 走看看