博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python中configparser模块记录
阅读量:6285 次
发布时间:2019-06-22

本文共 2216 字,大约阅读时间需要 7 分钟。

python中用来读取配置文件,配置文件的格式相同于windows下的ini配置文件

一、常用函数

read(filename) #读取配置文件,直接读取ini文件内容sections() #获取ini文件内所有的section,以列表形式返回['logging', 'mysql']options(sections) #获取指定sections下所有options ,以列表形式返回['host', 'port', 'user', 'password']items(sections) #获取指定section下所有的键值对,[('host', '127.0.0.1'), ('port', '3306'), ('user', 'root'), ('password', '123456')]get(section, option) #获取section中option的值,返回为string类型>>>>>获取指定的section下的option 
127.0.0.1getint(section,option) 返回int类型getfloat(section, option) 返回float类型getboolean(section,option) 返回boolen类型

  

举例如下:

配置文件ini如下:

[logging]level = 20path =server =[mysql]host=127.0.0.1port=3306user=rootpassword=123456

  代码如下:

import configparserfrom until.file_system import get_init_pathconf = configparser.ConfigParser()file_path = get_init_path()print('file_path :',file_path)conf.read(file_path)sections = conf.sections()print('获取配置文件所有的section', sections)options = conf.options('mysql')print('获取指定section下所有option', options)items = conf.items('mysql')print('获取指定section下所有的键值对', items)value = conf.get('mysql', 'host')print('获取指定的section下的option', type(value), value)

  综合使用方法:

import configparser"""读取配置文件信息"""class ConfigParser():    config_dic = {}    @classmethod    def get_config(cls, sector, item):        value = None        try:            value = cls.config_dic[sector][item]        except KeyError:            cf = configparser.ConfigParser()            cf.read('settings.ini', encoding='utf8')  #注意setting.ini配置文件的路径            value = cf.get(sector, item)            cls.config_dic = value        finally:            return valueif __name__ == '__main__':    con = ConfigParser()    res = con.get_config('logging', 'level')    print(res)

二、设置某个option 的值

conf.set("topsecret.server.com","port","67000") #修改port的值conf.write(open("config_parser","w")) #u将修改的内容回写到文件上

 三、添加一个section

conf.add_section('liuqing')conf.set('liuqing', 'int', '15')conf.set('liuqing', 'bool', 'true')conf.set('liuqing', 'float', '3.1415')conf.write(open("config_parser","w"))

四、

. 移除section 或者option 。(只要进行了修改就要写回的哦)

1 conf.remove__option('liuqing','int')2 conf.remove_section('liuqing')3  conf.write(open("test.conf", "w"))

 

 

转载于:https://www.cnblogs.com/jodiezhu2019/p/10736116.html

你可能感兴趣的文章
Linux中的网络监控命令
查看>>
this的用法
查看>>
windows下安装redis
查看>>
CentOS7 yum 安装git
查看>>
启动日志中频繁出现以下信息
查看>>
httpd – 对Apache的DFOREGROUND感到困惑
查看>>
分布式锁的一点理解
查看>>
idea的maven项目,install下载重复下载本地库中已有的jar包,而且下载后jar包都是lastupdated问题...
查看>>
2019测试指南-web应用程序安全测试(二)指纹Web服务器
查看>>
树莓派3链接wifi
查看>>
js面向对象编程
查看>>
Ruby中类 模块 单例方法 总结
查看>>
jQuery的validate插件
查看>>
5-4 8 管道符 作业控制 shell变量 环境变量配置
查看>>
Enumberable
查看>>
开发者论坛一周精粹(第五十四期) 求购备案服务号1枚!
查看>>
validate表单验证及自定义方法
查看>>
javascript 中出现missing ) after argument list的错误
查看>>
使用Swagger2构建强大的RESTful API文档(2)(二十三)
查看>>
Docker容器启动报WARNING: IPv4 forwarding is disabled. Networking will not work
查看>>