风-fmgao

导航

python-ini文件使用(读和写)

 

注意事项:
1.读文件:
read(filename):读取ini文件中的内容
sections():得到所有section,返回列表形式
options(section):得到给定section的所有option
items(section):得到指定section的所有key-value
get(section,option):得到section中的option值,返回str类型
get(section,option):得到section中的option值,返回int类型
2.写文件:
add_section(sectionname):添加一个名为sectionname的新section
set(sectionname,option,value):设置sectionname的option和value的值
    注意:最后要使用write把内容写入ini文件:write(open(filenama,'wb'))

直接贴出代码来:

  1. #coding=utf-8
  2. '''
  3. Created on 2015.10.30
  4. ini配置文件读写的使用
  5. '''
  6. import ConfigParser
  7. iniFileUrl="conf.ini"
  8. conf=ConfigParser.ConfigParser() #生成conf对象
  9. conf.read(iniFileUrl) #读取ini配置文件
  10. def readConfigFile():
  11. """
  12. sections:配置文件中[]中的值
  13. options:每组中的键
  14. items:键-值的列表形式
  15. """
  16. # 获取每组类型中的section值
  17. sections = conf.sections() # 获取所有sections
  18. print "---conf.ini文件中的section内容有:", sections
  19. # 获取每行数据的键即指定section的所有option
  20. print "---group_a的所有键为:", conf.options("group_a")
  21. print "---group_b的所有键为:", conf.options("group_b")
  22. # 获取指定section的所有键值对
  23. print "---group_a的所有键-值为:", conf.items("group_a")
  24. # 指定section,option读取具体值
  25. print "---group_a组的a_key1值为:", conf.get("group_a", "a_key1")
  26. print "---group_b组的b_key1值为(取整数类型):", conf.getint("group_b", "b_key1")
  27. def writeConfigFile():
  28. """
  29. 根据分组名、键名修改为新键值
  30. @param sections: section分组名
  31. @param key: 分组中的key
  32. @param newvalue: 需要修改后的键值
  33. """
  34. conf.set("group_b", "b_key3", "new3") #指定section和option则更新value
  35. conf.set("group_b", "b_key5", "value5") #指定section,则增加option和value
  36. conf.add_section("group_d") #添加section组
  37. conf.set("group_d", "d_key1", "value1") #给添加的section组增加option-value
  38. #写回配置文件
  39. conf.write(open(iniFileUrl, "wb"))
  40. readConfigFile()
  41. writeConfigFile()
  42. '''
  43. 运行结果:
  44. ---conf.ini文件中的section内容有: ['group_a', 'group_b', 'group_c']
  45. ---group_a的所有键为: ['a_key1', 'a_key2']
  46. ---group_b的所有键为: ['b_key1', 'b_key2', 'b_key3', 'b_key4', 'b_key5']
  47. ---group_a的所有键-值为: [('a_key1', '20'), ('a_key2', '10')]
  48. ---group_a组的a_key1值为: 20
  49. ---group_b组的b_key1值为(取整数类型): 121
  50. '''
附赠conf.ini文件:
[group_a]
a_key1 = 20
a_key2 = 10
 
[group_b]
b_key1 = 121
b_key2 = b_value2
b_key3 = new3
b_key4 = 127.0.0.1
b_key5 = value5
 
[group_c]
c_key1 = value1  
 
[group_d]
d_key1 = value1

posted on 2018-06-08 14:57  风-fmgao  阅读(2769)  评论(0编辑  收藏  举报