2.26 学python logging模块补充 configParser模块 re正则表达式
2018-02-27 11:09
489 查看
1.logging 模块的第二种使用
2.configParser
3.re
import logging mylogger= logging.getLogger() #创建一个Handler 用于写入日志文件 fh=logging.FileHandler('yanga11ang.log') #创建一个handle 用于输出到控制台 ch=logging.StreamHandle() formatter= logging.Formatter('%(asctime)s - %(name)s -%(levelname)s - %(message)s') fh.setFormatter(formatter) ch.setFormatter(formatter) mylogger.addHandler(fh) mylogger.addHandler(ch) #添加输出方式 mylogger.info('logger info msg')
2.configParser
#生成配置文档 有序字典 #创建 import configparser config= configparser.ConfigParser() config['DEFAULT']={'ServerAliveInterval':, 'Compression':'yes'} config['yanga11ang']={} with open('yanga11ang.ini','w') as configfile: config.write(configfile) #读取 import configparser config= configparser.ConfigParser() config.read('yanga11ang.ini') config.sections() #没有default 里面的 config.defaults() config.remove_section('yanga11ang') for key in config: print(key) for key in config['yanga11ang']: print(key) # default 里面的也会被打印出来 #删除 import configparser config= configparser.ConfigParser() config.read('yanga11ang.ini') config.remove_section('yanga11ang') config.has_section('yanga11ang') config.set('yanga11ang','123',123) config.write(open('yanga11ang.ini','w'))
3.re
#正则表达式 用来模糊匹配字符串的 ''' 普通字符 元字符:. ^ $ * + ? {} [] | () \ . 通配符: 匹配任意一个字符(不能匹配换行符) ^ 尖角符: 匹配开始 $ 美元符: 匹配结尾 * : 重复前面的一个符号任意多次[0,+oo) 贪婪匹配 + : 重复前面的一个符号至少一次[1,+oo) 贪婪匹配 ? : 重复前面的一个符号零次或一次 贪婪匹配 {}: 重复前面的一个符号指定次 'a{3}' 'a{2,5}' 贪婪匹配 []字符集: 匹配其中任意一个 '[qer]' '[-a]' '[.]'取消元字符的特殊功能, ^ [^tb] 匹配除了tb以外的字符 - [a-z] 匹配a到z的元素 \ [\n] 匹配那些特殊的字符 如换行制表等 \ 反斜杠: 反斜杠后跟元字符去除特殊功能 反斜杠后跟普通字符实现特殊功能 \d 匹配任何十进制数 相当于[0-9] \D 匹配任何非十进制数 相当于[^0-9] \s 匹配任何空字符 相当于[\t\n\r\f\v] \S 匹配任何非空字符 相当于[^ \t\n\r\f\v] \w 匹配任何字母或数字 相当于[a-zA-Z0-9] \W 匹配任何非字母或数字 相当于[^a-zA-Z0-9] \b 匹配一个单词边界,也就是指单词和空格之间的位置 re.findall(r'I\b','I am yanga11ang') (): 分组 '(as)+' as作为整体重复 | : 或者 '(as)|+'匹配as 或 + 短路原则 ''' import re #贪婪匹配所有的 re.findall(pattern,string) ret=re.findall(r'w\w{2}l','hello world') #只匹配一个 返回一个对象#只匹配一个 返回一个对象 ret=re.search(r'w\w{2}l','hello world') ret.group() #匹配结果 ret=re.search(r'(?P<id>\d{2})','www.yanga11ang.com') #(?P<id>) 命名格式, ret.group('id') #匹配结果 11 #在字符串开始匹配 ret=re.match(r'w\w{2}l','hello world') ret.group() #匹配结果 #分割 先通过第一个分开,在同功第二个分开 re.split('[sd]','iasaswerd') #替换 re.sub(pattern,change,string) #编译一个正则对象 obj=re.compile('\.com') obj.findall(string) obj.search(string)
相关文章推荐
- python常用模块补充hashlib configparser logging,subprocess模块
- python3之xml&ConfigParser&hashlib&Subprocess&logging模块
- Python 解析配置模块之ConfigParser详解
- python3配置文件模块configparser.ConfigParser
- Python模块之: ConfigParser 配置文件读取
- 深入探讨Python ConfigParser模块正确应用方式
- python ConfigParser模块详解
- Python - ConfigParser模块读写配置文件
- Python模块学习之ConfigParser读写配置信息
- 常用模块(subprocess/hashlib/configparser/logging/re)
- python模块之ConfigParser: 用python解析配置文件
- Python 解析配置模块之ConfigParser详解
- Python之配置文件模块 ConfigParser
- Python自动化测试 (二) ConfigParser模块读写配置文件
- python模块:configparser
- Python模块学习之ConfigParser读写配置信息
- 使用python的ConfigParser模块方便的读取配置文件
- python ConfigParser模块学习
- ConfigParser模块学习: 用python解析配置文件
- python模块之ConfigParser ini