• python模块之ConfigParser: 用python解析配置文件


    在程序中使用配置文件来灵活的配置一些参数是一件很常见的事情,配置文件的解析并不复杂,在python里更是如此,在官方发布的库中就包含有做这件事情的库,那就是ConfigParser,这里简单的做一些介绍。
        ConfigParser解析的配置文件的格式比较象ini的配置文件格式,就是文件中由多个section构成,每个section下又有多个配置项,比如:

    [db]
    db_host=127.0.0.1
    db_port=3306
    db_user=root
    db_pass=password
    [concurrent]
    thread=10
    processor=20

        假设上面的配置文件的名字为test.conf。里面包含两个section,一个是db, 另一个是concurrent, db里面还包含有4项,concurrent里面有两项。这里来做做解析:

    import ConfigParser
    import string, os, sys
    
    cf = ConfigParser.ConfigParser()
    cf.read("test.conf")
    # 返回所有的section
    s = cf.sections()
    print 'section:', s
    
    o = cf.options("db")
    print 'options:', o
    
    v = cf.items("db")
    print 'db:', v
    
    print '-'*60
    #可以按照类型读取出来
    db_host = cf.get("db", "db_host")
    db_port = cf.getint("db", "db_port")
    db_user = cf.get("db", "db_user")
    db_pass = cf.get("db", "db_pass")
    
    # 返回的是整型的
    threads = cf.getint("concurrent", "thread")
    processors = cf.getint("concurrent", "processor")
    
    print "db_host:", db_host
    print "db_port:", db_port
    print "db_user:", db_user
    print "db_pass:", db_pass
    
    print "thread:", threads
    print "processor:", processors
    #修改一个值,再写回去
    cf.set("db", "db_pass", "zhaowei")
    cf.write(open("test.conf", "w"))
    

      

  • 相关阅读:
    harbor私有仓库搭建
    为普通用户添加sudo权限
    进程节点占用磁盘空间
    influxdb做prometheus永久存储
    prometheus监控linux进程
    Redis一主两从搭建
    ELK搭建
    redis geo操作
    k8s 1.16.3 yaml声明变化
    k8s启动Pod遇到CrashLoopBackOff的解决方法
  • 原文地址:https://www.cnblogs.com/wanstack/p/9046226.html
Copyright © 2020-2023  润新知