zoukankan      html  css  js  c++  java
  • 建议40:深入掌握ConfigParser

    # -*-  coding:utf-8 -*-
    '''
    1、getboolean() 根据一定的规则将配置项的值转换为布尔值
    getboolean() 的真值规则:
           0、no、false 和off 都会被转义为False
           1、yes、true 和on则都被转义为True
                        其他值都会导致抛出ValueError 异常
                        
    在ConfigParser支持的配置文件格式里,有一个[DEFAULT] 节,当读取的配置项在不在指定的节里时,ConfigParser 
          将会到[DEFAULT] 节中查找
    
    get(section, option[, raw[, vars]]) 中的全名参数vars,查找规则如下:
    1)如果找不到节名,就抛出NoSectionError。
    2)如果给定的配置项出现在get() 方法的vars 参数中,则返回vars 参数中的值。
    3)如果在指定的节中含有给定的配置项,则返回其值。
    4)如果在[DEFAULT] 中有指定的配置项,则返回其值。
    5)如果在构造函数的defaults 参数中有指定的配置项,则返回其值。
    6)抛出NoOptionError。
    
    '''
    '''
    示例:C:\example.ini
    [DEFAULT]
    in_default = 'an option value in default'
    conn_str = %(dbn)s://%(user)s:%(pw)s@%(host)s:%(port)s/%(db)s
    dbn = mysql
    
    user = root
    host=localhost
    port = 3306
    
    [section1]
    option1=0
    
    [db1]
    user = aaa
    pw=ppp
    db=example
    
    [db2]
    host=192.168.0.110
    pw=www
    db=example
    '''
    
    import ConfigParser
    conf = ConfigParser.ConfigParser()
    conf.read("C:\example.ini")
    print conf.getboolean('section1', 'option1')
    print conf.get('db1', 'conn_str')
    print conf.get('db2', 'conn_str')
    
    '''
    False
    mysql://aaa:ppp@localhost:3306/example
    mysql://root:www@192.168.0.110:3306/example
    '''
  • 相关阅读:
    常用数据结构的应用场景
    数组与链表的对比
    [LeetCode 293] Flip Game
    [Leetcode] Palindrome Permutation 回文变换
    九大排序算法再总结
    query函数的可查询数据
    Column常用的参数
    sqlalchemy的常用字段
    sqlalchemy基本的增删改查
    sqlalchemy映射数据库
  • 原文地址:https://www.cnblogs.com/tychyg/p/4935944.html
Copyright © 2011-2022 走看看