首页 > 编程语言 > 详细

Python之路----------ConfigParser模块

时间:2017-01-05 16:41:05      阅读:209      评论:0      收藏:0      [点我收藏+]

Python的ConfigParser

废话不说,拿去用

技术分享
 1 #coding=utf-8
 2 
 3 import configparser
 4 ‘‘‘
 5 基於Python3.0版本寫的配置文件的創建、增加、刪除、修改等方法
 6 ‘‘‘
 7 def search(ini_file,section,option=None):
 8     ‘‘‘
 9     查找配置文件节点的所有属性
10     :param ini_file: 要查找的配置文件
11     :param section: 输入查找的节点名
12     :return: 返回这个节点下面的所有键值对
13     ‘‘‘
14     config = configparser.ConfigParser()
15     config.read(ini_file)
16     if option == None:
17         dic = {}
18         for op in config.sections():
19             if op == section:
20                 for k in config.items(op):
21                     dic[k[0]] = k[1]
22         return dic
23     else:
24         return config.get(section, option)
25 
26 def add(ini_file, section, **kwargs):
27     ‘‘‘
28     添加配置文件节点属性K:V
29     :param ini_file: 要添加的文件名字
30     :param section: 要添加的节点名字
31     :param kwargs: 节点下面option(键值对)
32     :return:
33     ‘‘‘
34     config = configparser.ConfigParser()
35     config.read(ini_file)
36     config[section] = kwargs
37     with open(ini_file, w) as configfile:
38         config.write(configfile)
39     return True
40 
41 
42 def modify(ini_file, section, **kwargs):
43     ‘‘‘
44     修改配置文件的节点属性的K:V
45     :param ini_file: 要修改的文件
46     :param section: 节点名字
47     :param kwargs: 要修改的节点Key的value
48     :return: 没有返回值
49     ‘‘‘
50     config = configparser.ConfigParser()
51     config.read(ini_file)
52     for k in kwargs.items():
53         config.set(section, k[0], str(k[1]))
54     config.write(open(ini_file, "w"))
55     return True
56 
57 def deleate(ini_file, section, option=None):
58     ‘‘‘
59     删除指定的节点或者指定节点下面的属性
60     :param ini_file:配置文件
61     :param section:节点名字
62     :param option:节点option(鍵值對)
63     :return:
64     ‘‘‘
65     config = configparser.ConfigParser()
66     config.read(ini_file)
67     if not option:
68         config.remove_section(section)
69     else:
70         config.remove_option(section, option)
71     config.write(open(ini_file, "w"))
72     return True
73 
74 
75 def creat_ini(ini_file, **kwargs):
76     ‘‘‘
77     创建全新的配置文件
78     :param ini_file: 新配置文件的名字
79     :param kwargs: 格式参考下面的字典,option的key都是节点名字,每个key的value都是属性及属性值
80     dic = {"DEFAULT": {},
81              "mobile1": {},
82              "mobile2": {"number": "14420000000", "user":"False"},
83              "mobile3": {"number": "14430000000", "user": "False"},
84              "mobile4": {"number": "14440000000", "user": "False"},
85              "mobile5": {"number": "14450000000", "user": "False"}}
86     :return:
87     ‘‘‘
88     config = configparser.ConfigParser()
89     l = [i for i in kwargs]
90     for x in l:
91         config[x] = kwargs[x]
92     config.write(open(ini_file, "w"))
93     return True
基於Python3.0版本寫的配置文件的創建、增加、刪除、修改等方法

 

技术分享
  1 #coding=utf-8
  2 
  3 import ConfigParser
  4 ‘‘‘
  5 基于Python2.7版本的配置文件的创建、查找、添加、修改、删除等操作
  6 ‘‘‘
  7 
  8 def creat_ini(ini_file, **kwargs):
  9     ‘‘‘
 10     创建全新的配置文件
 11     :param ini_file: 新配置文件的名字
 12     :param kwargs: 格式参考下面的字典,option的key都是节点名字,每个key的value都是属性及属性值
 13     option = {"mobile1": {},
 14              "mobile2": {"number": "14420000000", "user":"False"},
 15              "mobile3": {"number": "14430000000", "user": "False"},
 16              "mobile4": {"number": "14440000000", "user": "False"},
 17              "mobile5": {"number": "14450000000", "user": "False"}}
 18     :return:
 19     ‘‘‘
 20     config = ConfigParser.ConfigParser()
 21     l = [i for i in kwargs]
 22     for section in l:
 23         config.add_section(section)
 24         if len(kwargs[section]) != 0:
 25             for k in kwargs[section].items():
 26                 config.set(section, k[0], str(k[1]))
 27     config.write(open(ini_file, "w"))
 28     return True
 29 
 30 
 31 def search_ini(ini_file,section,option=None):
 32     ‘‘‘
 33     查询section下面所有kv,查询制定node制定option值
 34     :param ini_file: 配置文件名字
 35     :param section: 要添加的节点名字
 36     :param option: 节点下面键名
 37     ‘‘‘
 38     config = ConfigParser.ConfigParser()
 39     config.read(ini_file)
 40     if option == None:
 41         dic = {}
 42         for k in config.items(section):
 43             dic[k[0]]=k[1]
 44         return dic
 45     else:
 46         return config.get(section,option)
 47 
 48 
 49 def add_ini(ini_file,section,**kwargs):
 50     ‘‘‘
 51     添加配置文件节点属性K:V
 52     :param ini_file: 要添加的文件名字
 53     :param section: 要添加的节点名字
 54     :param kwargs: 节点下面键值对
 55     :return:
 56     ‘‘‘
 57     config = ConfigParser.ConfigParser()
 58     config.read(ini_file)
 59     if config.has_section(section):
 60         for k in kwargs.items():
 61             config.set(section, k[0], k[1])
 62     else:
 63         config.add_section(section)
 64         for k in kwargs.items():
 65             config.set(section, k[0], k[1])
 66     with open(ini_file, w) as configfile:
 67         config.write(configfile)
 68     return True
 69 
 70 
 71 def modify_ini(ini_file, section, **kwargs):
 72     ‘‘‘
 73     修改配置文件的节点属性的K:V
 74     :param ini_file: 要修改的文件
 75     :param section: 节点名字
 76     :param kwargs: 要修改的节点Key的value
 77     :return: 没有返回值
 78     ‘‘‘
 79     config = ConfigParser.ConfigParser()
 80     config.read(ini_file)
 81     for k in kwargs.items():
 82         config.set(section, k[0], str(k[1]))
 83     with open(ini_file, w) as configfile:
 84         config.write(configfile)
 85 
 86     return True
 87 
 88 
 89 def del_ini(ini_file,section,option = None):
 90     ‘‘‘
 91     删除指定的节点或者指定节点下面的属性
 92     :param ini_file:配置文件
 93     :param section:节点名字
 94     :param option:节点属性
 95     :return:
 96     ‘‘‘
 97     config = ConfigParser.ConfigParser()
 98     config.read(ini_file)
 99     if config.has_section(section):
100         if not option:
101             config.remove_section(section)
102             config.write(open(ini_file, "w+"))
103             return True
104         else:
105             if config.has_option(section,option):
106                 config.remove_option(section, option)
107                 config.write(open(ini_file, "w+"))
108                 return True
109             else:
110                 print("删除失败,《%s》没有《%s》option!!" % (section,option))
111                 return False
112     else:
113         print("删除失败,section《%s》不存在" % section)
114         return False
基於Python2.7版本寫的配置文件的創建、增加、刪除、修改等方法

 

Python之路----------ConfigParser模块

原文:http://www.cnblogs.com/python1023/p/6243106.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!