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')) 

 

posted @ 2016-07-05 15:14  我当道士那儿些年  阅读(561)  评论(0编辑  收藏  举报