美文网首页python学习我爱编程
python configparser 用法详解(一)

python configparser 用法详解(一)

作者: 一夜花满楼 | 来源:发表于2018-06-11 20:05 被阅读0次

    今天来总结一下configparser类的基本用法

    configparser是python 提供用来处理配置文件类,今天来总结一下configparser类的基本用法

    我们先来看一个常见的基础的配置文件

    [DEFAULT]
    serveraliveinterval = 45
    compression = yes
    compressionlevel = 9
    
    [bitbucket]
    user = kk
    
    [topsecrect]
    port = 22
    

    可以看到配置文件的基本格式是由多个section组成,其中包含一个[DEFAULT]的section,用来进行默认配置,每个section下面用key 和 value 的值对组成

    那么如何用configparser类来生成这样一个配置文件呢

    我们可以用类似python字典的方式来操作configparser类来生成配置文件

    import configparser
    
    config = configparser.ConfigParser()
    config['DEFAULT'] = {'serveraliveinterval' : '4',
                         'compression' : 'yes',
                         'compressionlevel' : '9'}
    
    config['bitbucket'] = {}
    config['bitbucket']['user'] = 'kk'
    
    config['topsecrect'] = {}
    topsecrect = config['topsecrect']
    
    topsecrect['port'] = '22'
    
    with open('example.ini', 'w') as configfile:
        config.write(configfile)
    

    下面我们来试试用configparser读取配置文件

    import configparser
    
    config = configparser.ConfigParser()
    
    config.read('example.ini')
    
    for key in config['DEFAULT']:
        print(key)
    

    可以看到操作configparser的方法和python的字典是很类似的

    configparser支持的数据类型

    一般情况下,configpaser类是无法识别配置文件中的value的数据类型的,它总是以字符串的形式来存储这些类型,所以当涉及到int float等类型的时候就需要我们自己对它进行转换

    configparser 为我们提供了getboolean() getint() getfloat()方法用来对读对应类型的配置

    import configparser
    
    config = configparser.ConfigParser()
    
    config.read('example.ini')
    
    port = config['topsecrect'].getint('port')
    
    print(port)
    
    compression = config.getboolean('DEFAULT', 'compression')
    print(compression)
    

    其中getboolean方法可以识别 'yes'/'no', 'on'/'off', 'true'/'false' and '1'/'0'等数据并转换为布尔值

    相关文章

      网友评论

        本文标题:python configparser 用法详解(一)

        本文链接:https://www.haomeiwen.com/subject/wetkeftx.html