深入探討Python ConfigParser模塊正確應(yīng)用方式
Python編程語言在實(shí)際應(yīng)用中尅幫助我們創(chuàng)造許多有用的價(jià)值。它是一款應(yīng)用簡單的面向?qū)ο缶幊陶Z言,其中包含有許多比較有用的模塊供我們使用。今天就為大家介紹其中一個(gè)比較重要的Python ConfigParser模塊的應(yīng)用方式。
在程序中使用配置文件來靈活的配置一些參數(shù)是一件很常見的事情,配置文件的解析并不復(fù)雜,在Python里更是如此,在官方發(fā)布的庫中就包含有做這件事情的庫,那就是ConfigParser,這里簡單的做一些介紹。
Python ConfigParser模塊解析的配置文件的格式比較象ini的配置文件格式,就是文件中由多個(gè)section構(gòu)成,每個(gè)section下又有多個(gè)配置項(xiàng),比如:
- [db]
- db_host=127.0.0.1
- db_port=3306
- db_user=root
- db_pass=password
- [concurrent]
- thread=10
- processor=20
假設(shè)上面的配置文件的名字為test.conf。里面包含兩個(gè)section,一個(gè)是db, 另一個(gè)是concurrent, db里面還包含有4項(xiàng),concurrent里面有兩項(xiàng)。這里來做做解析:
- #-*- encoding: gb2312 -*-
- import ConfigParser
- import string, os, sys
- cf = ConfigParser.ConfigParser()
- cf.read("test.conf")
- # 返回所有的section
- s = cf.sections()
- print 'section:', s
- o = cf.options("db")
- print 'options:', o
- v = cf.items("db")
- print 'db:', v
- print '-'*60
- #可以按照類型讀取出來
- db_host = cf.get("db", "db_host")
- db_port = cf.getint("db", "db_port")
- db_user = cf.get("db", "db_user")
- db_pass = cf.get("db", "db_pass")
- # 返回的是整型的
- threads = cf.getint("concurrent", "thread")
- processors = cf.getint("concurrent", "processor")
- print "db_host:", db_host
- print "db_port:", db_port
- print "db_user:", db_user
- print "db_pass:", db_pass
- print "thread:", threads
- print "processor:", processors
- #修改一個(gè)值,再寫回去
- cf.set("db", "db_pass", "zhaowei")
- cf.write(open("test.conf", "w"))
以上就是對Python ConfigParser模塊的相關(guān)應(yīng)用方法的介紹。
【編輯推薦】