在程序中使用配置文件来灵活的配置一些参数是一件很常见的事情,配置文件的解析并不复杂,在python里更是如此,在官方发布的库中就包含有做这件事情的库,那就是ConfigParser,这里简单的做一些介绍。
    ConfigParser解析的配置文件的格式比较象ini的配置文件格式,就是文件中由多个section构成,每个section下又有多个配置项,比如:

[db]
db_host=127.0.0.1
db_port=3306
db_user=root
db_pass=password
[concurrent]
thread=10
processor=20

假设上面的配置文件的名字为test.conf。里面包含两个section,一个是db, 另一个是concurrent, db里面还包含有4项,concurrent里面有两项。这里来做做解析:

 1 #-*- encoding: gb2312 -*-
 2 import ConfigParser
 3 import string, os, sys
 4
 5 cf = ConfigParser.ConfigParser()
 6 cf.read("test.conf")
 7 # 返回所有的section
 8 s = cf.sections()
 9 print 'section:', s
10
11 o = cf.options("db")
12 print 'options:', o
13
14 v = cf.items("db")
15 print 'db:', v
16
17 print '-'*60
18 #可以按照类型读取出来
19 db_host = cf.get("db", "db_host")
20 db_port = cf.getint("db", "db_port")
21 db_user = cf.get("db", "db_user")
22 db_pass = cf.get("db", "db_pass")
23
24 # 返回的是整型的
25 threads = cf.getint("concurrent", "thread")
26 processors = cf.getint("concurrent", "processor")
27
28 print "db_host:", db_host
29 print "db_port:", db_port
30 print "db_user:", db_user
31 print "db_pass:", db_pass
32
33 print "thread:", threads
34 print "processor:", processors
35 #修改一个值,再写回去
36 cf.set("db", "db_pass", "zhaowei")
37 cf.write(open("test.conf", "w"))

参考:

def read_hotfix_cfg(cfg_file):print "----Reading the hotfix cfg file----"cfg_file = "./mgmt/hotfixes/"+cfg_fileif not os.path.isfile(cfg_file):print "The config file is not exist"return Falsetry:cfg = configobj.ConfigObj(cfg_file, encoding='UTF8')except Exception, e:print "The cfg_file is wrong: ",print ereturn Falseelements_path = []hf_elements = 'file_build_path'if cfg.has_key(hf_elements):elements_path = cfg[hf_elements].strip().split('\n')else:print "The [file_bulid_path] is not in the cfg file"return Falseglobal VERSIONS, SRC_TREEif cfg.has_key('versions'):VERSIONS = str(cfg['versions'])SRC_TREE = VERSIONS + "-rpl2sles-upgrade"else:print "The [versions] is not in the cfg file"return False

转载于:https://www.cnblogs.com/WayneZeng/p/9290743.html

Python模块: ConfigParser相关推荐

  1. Python模块configparser:加载配置文件config.ini

    目录结构: config.ini load_config.py import configparser''' 1.读取配置文件 ''' config = configparser.ConfigPars ...

  2. python中configparser详解_Python中的ConfigParser模块使用详解

    1.基本的读取配置文件 -read(filename) 直接读取ini文件内容 -sections() 得到所有的section,并以列表的形式返回 -options(section) 得到该sect ...

  3. python中confIgparser模块学习

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

  4. 【Python的configparser模块读取.ini文件内容并输出】

    configparser是 Pyhton 标准库中用来解析配置文件的模块,并且内置方法和字典非常接近.Python2.x 中名为 ConfigParser,3.x 已更名小写.下文通过使用python ...

  5. python配置文件解析_Python中配置文件解析模块-ConfigParser

    Python中有ConfigParser类,可以很方便的从配置文件中读取数据(如DB的配置,路径的配置). 配置文件的格式是: []包含的叫section, section 下有option=valu ...

  6. python使用configparser读取ini格式的配置文件

    python使用configparser读取ini格式的配置文件 来自Python标准库的configparser模块定义了读取和写入Microsoft Windows操作系统使用的配置文件的功能.这 ...

  7. 如何获取本地安装的Python模块列表?

    我想获得Python模块的列表,这些模块在我的Python安装(UNIX服务器)中. 如何获得计算机中安装的Python模块的列表? #1楼 使用pkgutil.iter_modules非常简单的搜索 ...

  8. python常用模块大全总结-常用python模块

    广告关闭 2017年12月,云+社区对外发布,从最开始的技术博客到现在拥有多个社区产品.未来,我们一起乘风破浪,创造无限可能. python常用模块什么是模块? 常见的场景:一个模块就是一个包含了py ...

  9. python模块手册_python模块说明

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! python模块说明:类似于函数式编程和面向过程编程,函数式编程则完成一个功能, ...

最新文章

  1. BREW 计费模式概览
  2. Linux系统16进制形式查看二进制文件
  3. ECCV 2020 谷歌论文盘点—Poster 篇
  4. 脚本语言(确认补遗)
  5. Exposure Mask of Digital Cameras
  6. jquery序列化serialize()方法空格变为+问题解决参考方法
  7. 009.共享目录下VS编写的程序在linux下打开出现中文乱码
  8. Opencv学习笔记 - 使用opencvsharp和支持向量机
  9. 【Flutter小记4】Android手动设置Camera焦点没效果的解决方案CameraImage转YUV或RGBA要注意!
  10. 如何禁用Citrix Receiver硬件加速功能
  11. 华为上研所无线嵌入式优招面经
  12. PowerDesigner16.5 生成MySQL 数据库模型
  13. html怎么设置img样式,img 元素可以用 CSS 设置样式吗?
  14. 在Excel中给不足位数的数字前面补0
  15. POV系列制作之十字旋转LED
  16. 阿里云oss文件上传(简单上传、服务端签名后直传)
  17. LHS与RHS查询(已完结)
  18. 本机不装Oracle,远程访问服务器上Oracle教程
  19. echarts 地图 海南诸岛只显示上面一小块,可以看一下图例边框颜色以及背景颜色是否相同。
  20. 计算机局域网组建课件,为什么《计算机局域网组建与维护案例教程沈大林课件》找不到?...

热门文章

  1. SAP Cloud for Customer Service Control工作中心介绍
  2. SAP UI5和CRM WebUI的View和Controller是如何绑定的
  3. Linux Ubuntu终端“@”前后的含义及修改(修改用户名及主机名)【试用办法,部分不可行】
  4. Linux / Ubuntu系统查看磁盘空间及目录容量
  5. 2014年职称计算机word2003,2014年职称计算机考试Word2003模拟题及答案5
  6. 中心极限定理_High Dimensional Probability(1) 中心极限定理
  7. 计算机网络cdma的缺点,CDMA和GSM比较的优缺点是什么?
  8. 解决由于操作顺序问题导致 hbase 一直处于启动无法关闭的问题
  9. centos php 安装mysql_CentOS上安装Mysql+PHP-fpm+Nginx
  10. java 数字表示什么意思是什么,读取Java字节码指令:数字是什么意思?