实例文件

[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. 用Java编写的http下载工具类,包含下载进度回调

    HttpDownloader.java package com.buyishi; import java.io.FileOutputStream; import java.io.IOException ...

  2. 几个 PHP 的"魔术常量"

    __LINE__ 文件中的当前行号. __FILE__ 文件的完整路径和文件名.如果用在被包含文件中,则返回被包含的文件名.自 PHP 4.0.2 起,__FILE__ 总是包含一个绝对路径(如果是符 ...

  3. spring中PropertyPlaceholderHelper替换占位符的值

    1.Properties中的值替换¥{}或者#{}占位符 String text = "foo=${foo},bar=${bar}"; Properties props = new ...

  4. Java 通过 HTTP 下载文件

    1. [代码]Download.java   package core.spider; import java.io.*;import java.net.*;import java.util.*; / ...

  5. codeforces 443 B. Kolya and Tandem Repeat 解题报告

    题目链接:http://codeforces.com/contest/443/problem/B 题目意思:给出一个只有小写字母的字符串s(假设长度为len),在其后可以添加 k 个长度的字符,形成一 ...

  6. [原创]java合并word文件

    需求背景 在互联网教育行业,做内容相关的项目经常碰到的一个问题就是如何动态生成一张word试卷.事先把题库中的每一道试题都已经保存成一个独立的word文件了,但是在选择了部分试题生成一张word试卷的 ...

  7. UVA-10600(次小生成树)

    题意: 现在给一个图,问最小生成树和次小生成树的权值和是多少; 思路: 求最小生成树的两种方法,次小生成树是交换最小生成树的其中一条边得到的,现在得到了最小生成树,枚举不在次小生成树中的边,再求一边最 ...

  8. C++ set和map的简单使用

    C++中的STL模板库的功能可谓相当强大.今天我们来简单说一下set和map的使用方法. 1.pair 我们先来说一下pair.pair定义在头文件<utility>中,其本身相当于一个已 ...

  9. CentOS6.6详细安装教程(图文教程)

    CentOS 6.x最新版本为CentOS 6.6,下面介绍CentOS 6.6的具体安装配置过程,需要的朋友可以参考下说明: Centos6.6 下载地址:thunder://QUFodHRwOi8 ...

  10. page-break-before和page-break-after

    page-break-before和page-break-after CSS属性并不会修改网页在屏幕上的显示,这两个属性是用来控制文件的打印方式. 每个打印属性都可以设定4种设定值:auto.alwa ...