python3笔记-读取ini配置文件

在代码中经常会通过ini文件来配置一些常修改的配置。下面通过一个实例来看下如何写入、读取ini配置文件.

需要的配置文件是:

1 [path]
2 back_dir = /Users/abc/PycharmProjects/Pythoncoding/projects/
3 target_dir = /Users/abc/PycharmProjects/Pythoncoding/
4 
5 [file]
6 back_file = apitest

下面是具体实现:

 1 import os
 2 import time
 3 import configparser
 4 # back_path = "/Users/abc/PycharmProjects/Pythoncoding/projects/"
 5 # back_file ="hello.txt"
 6 # 可以写为读取配置文件
 7 # 第一步:创建conf对象
 8 conf = configparser.ConfigParser()
 9 # 第二步:添加section、options的值
10 conf.add_section("path")
11 conf.set("path","back_dir","/Users/abc/PycharmProjects/Pythoncoding/projects/") # option
12 conf.set("path","target_dir","/Users/abc/PycharmProjects/Pythoncoding/")    # option
13 conf.add_section("file")
14 conf.set("file","back_file","apitest")
15 
16 # 第三步:写入文件
17 with open("path.ini",'w')as conffile:
18     conf.write(conffile)
19 
20 # 第四步:读取配置文件中的section、options的值
21 back_dir =conf.get('path','back_dir')
22 back_file =conf.get("file","back_file")
23 target_dir =conf.get("path","target_dir")
24 
25 # 执行zip压缩命令,将apitest目录下所有文件打包压缩
26 source =[back_dir,back_file]
27 target_file=target_dir+time.strftime("%Y%m%d%H%M%S")+'.zip'
28 zip_commond ="zip -qr "%s" "%s""%(target_file,''.join(source))
29 print(zip_commond)
30 if os.system(zip_commond)==0:
31     print('Successful backup to',target_file)
32 else:
33     print('Backup Failed')
1 print(conf.sections())
2 #['path', 'file']
3 
4 print(conf.options('path'))
5 #['back_dir', 'target_dir']
6 
7 print(conf.items('path'))
8 #[('back_dir', '/Users/abc/PycharmProjects/Pythoncoding/projects/'), ('target_dir', '/Users/abc/PycharmProjects/Pythoncoding/')]

笔记:

模块常用函数:
1)读取配置文件
read(filename) 直接读取ini文件内容
sections() 得到所有的section,并以列表的形式返回
options(section) 得到该section的所有option
items(section) 得到该section的所有键值对
get(section,option) 得到section中option的值,返回为string类型
getint(section,option) 得到section中option的值,返回为int类型,还有相应的getboolean()和getfloat() 函数。
2)写入配置文件
add_section(section) 添加一个新的section
set( section, option, value) 对section中的option进行设置,需要调用write将内容写入配置文件。

原文地址:https://www.cnblogs.com/lily1989/p/8401005.html