• configparser模块


    configparser模块

    echo   $@ $# $? $*

     具体代码示例代码

    import ConfigParser
    import os
    
    
    class Config(object):
        def __init__(self, config_filename="cgss.conf"):
            print(config_filename)
            file_path = file_path = os.path.join(os.path.dirname(os.path.dirname(__file__)), config_filename)  #注意这句的路径问题
            self.cf = ConfigParser.ConfigParser()
            self.cf.read(file_path)
            print(self.get_sections())
    
        def get_sections(self):
            return self.cf.sections()
    
        def get_options(self, section):
            return self.cf.options(section)
    
        def get_content(self, section):
            result = {}
            for option in self.get_options(section):
                value = self.cf.get(section, option)
                result[option] = int(value) if value.isdigit() else value
            return result
    
    ret = Config().get_content("mongo")
    print ret

    cgss.cnf   
    [notdbMysql] host
    = 192.168.1.101 port = 3306 user = root password = python123

    详解

    configparse用于处理特定格式的文件,其本质上利用open来操作文件(比如配置文件)
    **********配置文件***************
    #注释1这个一个配置文件

        [secton1] #节点  
        k1 = v1 #
        k2:v2  #
        [section2] #节点  
        k1 = v2#

    @1)、获取所有节点

    import configparser  
    config = configparser.ConfigParser()  
    config.read('xxooo.txt', encoding='utf-8')  
    ret = config.sections()  
    print(ret)  

    @2)、获取指定节点下所有的键值对

        import configparser  
        config = configparser.ConfigParse()  
        config.read('xxoo.txt', encoding='utf-8')  
        ret = config.items('sections')  
        print(ret)  

    @3)、获取指定节点下所有的键

        import configparser  
        config = configparser.ConfigParser()  
        config.read("xxoo.txt", encoding="utf-8")  
        ret = config.options('section1')  
        print(ret)  

    @4)、获取指定节点下指定key值

        import configparser  
        config = configparser.ConfigParser()  
        config.read('xxoo.txt', encoding='utf-8')  
        v = config.get('section1', 'k1')  
        #v = config.getint('section1', 'k1')  
        #v = config.getfloat('section1', 'k1')  
        #v = config.getboolean('section1', 'k1')  
        print(v)  

    @5)、检查、删除、添加节点

        import configparser  
        config = configparser.ConfigParser()  
        config.read('xxoo.txt', encoding='utf-8')  
        #检查  
        has_sec = config.has_section('section1')  
        print(has_sec)  
        #添加节点  
        config.add_section('SEC_1')  
        config.write(open('xxoo.txt', 'w'))  
        #删除节点  
        config.remove_section("SEC_1")  
        config.write(open("xxoo.txt", 'w'))  

    @6)、检查、删除、设置指定组内的键值对

    import configparser  
    config = configparser.ConfigParser()  
    confgi.read('xxoo.txt', encoding='utf-8')  
    #检查  
    has_opt = config.has_option('section1','k1')  
    print(has_opt)  
    #删除  
    config.remove_option('section1', 'k1')  
    config.write(open('xxoo.txt','w'))  
    #设置  
    config.set('section1','k10','123')  
    config.write(open("xxoo.txt",'w')) 
  • 相关阅读:
    C++ SDL2事件处理
    C++ SDL_Image配置
    C++ TinyXML库读写XML
    C++ libcurl库使用
    C++ 配置使用libcurl
    C++ 正则使用
    C++使用cJSON
    Vue通过状态为页面切换添加loading、为ajax加载添加loading
    移动端真机调试工具--DebugGap (VIDE)
    new Date(str)返回的时间结果在移动端比PC端快了8小时
  • 原文地址:https://www.cnblogs.com/renfanzi/p/5643741.html
Copyright © 2020-2023  润新知