实例文件

[root@docker2 ~]# cat test.ini

[base]

host = 192.168.88.121

port = 3306

user = root

path = /home

passwd = 123

[callback]

path = /Autops

alert = yes

count = 1

ftp = no

基础用法:代码片段

>>> cf.read("test.ini")                              #读取配置文件

['test.ini']

>>> cf.sections()                                    #片段名

['base', 'callback']

>>> cf.options("callback")                           #配置key值/配置项

['path', 'alert', 'count', 'ftp']

>>> cf.items("callback")                           #配置选项和值

[('path', '/Autops'), ('alert', 'yes'), ('count', '1'), ('ftp', 'no')]

>>> cf.get("base","port")

'3306'

>>> cf.get("base","passwd")                           #没有的key的会报错

Traceback (most recent call last):

ConfigParser.NoOptionError: No option 'passwd' in section: 'base'

>>> cf.set("base","passwd","123")               #设定选项,key可以时不存在的

>>> cf.write(open("test.ini","w"))                  #写入配置文件

>>> cf.getint('base','port')                           #直接读出int型,但value必须可以转成int

3306

>>> cf.getfloat('base','port')

3306.0

>>> cf.getboolean('callback','alert') #0/no/false/off都视为False,

#1/yes/true/on视为True

True

>>> cf.getboolean('callback','count')

True

注意事项:

  • 当配置文件中有定义DEFAULT片段时,在其他片段中找不到的相应的key时,就会到DEFAULT中去查找,如果还是没有就会报错NoOptionError

[DEFAULT]

dbn=mysql

user=root

[base]

user = autops

>>> cf.get('base','user')

'autops'

>>> cf.get('base','dbn')

'mysql                                                      #dbn的值是default里的

  • 可以像字符串进行变量替换,形成一个大字符串 %s

[DEFAULT]

conn_str=%(dbn)s -u%(user)s -p%(passwd)s %(db)s

dbn=mysql

user=root

host = 192.168.88.121

port = 3306

[db1]

port = 3307

user = root

db = autops

passwd = 123

[db2]

user = monitor

db = monitor

passwd = 123

结果:

>>> cf.get("db1","conn_str")

'mysql -uroot -p123 autops'

>>> cf.get("db2","conn_str")

'mysql -umonitor -p123 monitor

python对ini配置文件处理的更多相关文章

  1. python读取ini配置文件的示例代码(仅供参考)

    这篇文章主要介绍了python读取ini配置文件过程示范,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 安装 pip install configp ...

  2. Python读取ini配置文件(接口自动测试必备)

    前言 大家应该接触过.ini格式的配置文件.配置文件就是把一些配置相关信息提取出去来进行单独管理,如果以后有变动只需改配置文件,无需修改代码. 特别是后续做自动化的测试,代码和数据分享,进行管理.比如 ...

  3. python 提供INI配置文件的操作 ConfigParser

    原文地址:http://www.cnblogs.com/pumaboyd/archive/2008/08/11/1265416.html 红色的为标注信息 +++++++++++++++++引用+++ ...

  4. Python读取ini配置文件的方式

    python configparser模块   ConfigParser模块在python中用来读取配置文件,配置文件的格式跟windows下的ini配置文件相似,可以包含一个或多个节(section ...

  5. Python之ini配置文件详解

    INI介绍 INI是英文"初始化"(initialization)的缩写,被用来对操作系统或特定程序初始化或进行参数设置.由节(section). 键(key).值(value)构 ...

  6. python读取 ini 配置文件

    在详解python读取ini文件之前,我们先说明一个ini文件的组成: 一个ini文件是由多个section组成,每个section中以key=vlaue形式存储数据: 然后我们来使用python读取 ...

  7. python读写ini配置文件

    像邮箱等信息是可以写在配置文件里面的,python有一个配置模块ConfigParser,可以处理配置文件信息 目录 1.配置模块ConfigParser 2.基本应用 1.配置模块ConfigPar ...

  8. Python读取ini配置文件

    db_config.ini [baseconf] host=127.0.0.1 port=3306 user=root password=root db_name=evaluting_sys [con ...

  9. python 读取ini 配置文件

    安装 pip install configparser 1 配置文件 config.ini: [MysqlDB]user=rootpasswd=123456sport=3306db_name=my_d ...

随机推荐

  1. safi 中placeholder不垂直居中

    用css hack将line-height 设置为1 例子: input{height: 32px; line-height: 32px; [;line-height: 1px;]};

  2. iOS UI控件之间的关系图

  3. 数据结构之 图论---bfs(邻接表)

    数据结构实验之图论二:基于邻接表的广度优先搜索遍历 Time Limit: 1000MS Memory limit: 65536K 题目描述 给定一个无向连通图,顶点编号从0到n-1,用广度优先搜索( ...

  4. physical processor, core, logical processor

    Processor Groups https://docs.microsoft.com/en-us/windows/desktop/ProcThread/processor-groups The 64 ...

  5. DedeCms如何调用Discuz论坛主题等数据方法总结

    DedeCms如何调用Discuz论坛主题等数据方法总结 同时使用Dedecms和Discuz论坛的朋友,难免要在网站内调用论坛的内容.使用Discuz论坛的JS调用方式,对搜索引擎不够友好,下面我们 ...

  6. 设置Tomcat的jvm内存问题

    tomcat的jvm大小设置与操作系统以及jdk有关:具体来说: 1.操作系统是32bit的,程序最大内存访问空间是4G, 2的32次方,这是硬件决定的,跟windows linux没有任何关系. 2 ...

  7. codeforces 669C C. Little Artem and Matrix(水题)

    题目链接: C. Little Artem and Matrix time limit per test 2 seconds memory limit per test 256 megabytes i ...

  8. The Castle

    链接 分析:先暴力求出联通块数和最大联通块包含多少,接着对于每个位置判断去掉其上下左右的四个位置的墙之后的最大联通块数,并且记得先选最西,然后选最南的顺序了来输出 /* PROB:castle ID: ...

  9. NOIP2008题解

    传送门 考查题型 二分图 暴力枚举 判断素数 dp T1 传纸条 题目描述 小渊和小轩是好朋友也是同班同学,他们在一起总有谈不完的话题.一次素质拓展活动中,班上同学安排做成一个m行n列的矩阵,而小渊和 ...

  10. 将svn的项目转移到另外一个仓库中

    前几天在做一个项目的时候,因为需要,需要将Server A 上SVN仓库 repos1中的项目pro1迁移到Server B 上的SVN仓库中,首先想到的是:通过复制,但是仔细一想,这样是不可能的:然 ...