Python基础系列

Python常用模块之configparser

2019-08-05  本文已影响18人  我爱学python

ConfigParser简介

ConfigParser 是用来读取配置文件的包。配置文件的格式如下:中括号“[ ]”内包含的为section。section 下面为类似于key-value 的配置内容。

[mysql-db]
ip = 127.0.0.1
port = 3306
user=root
password=root

中括号“[ ]”内包含的为section。中括号以下称之为options,为类似于key-value 的options 的配置内容

**1: 假设以上为名叫config.ini的文件,接下来教你如何去使用这个文件, **

使用ConfigParser 首选需要初始化实例,并读取配置文件:

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:857662006 
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
      import configparser

      config=configparser.ConfigParser()

      config.read("config.ini")

      ip=config.get("mysql-db","ip") # 获取配置文件中的ip地址

      port=config.get("mysql-db","port")

      user=config.get("mysql-db","port") 

如文件名为config.ini :

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:857662006 
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
[mysql-db]

ip = 127.0.0.1
port = 3306
user=root
password=root

 

[oracle-db]
ip = 192.168.1.1
port = 1234
user=oracle
password=oralce 

2:ConfigParser的常用方法

(1:获取所有section:

s=config.sections()
print(s)

将输出:

['mysql-db', 'oracle-db']

(2:获取指定section中的option。也就是获取ip或者port.......的值,如下:

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:857662006 
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
mysql_ip=config.get("mysql-db","ip")
oracle_ip=config.get("oracle-db","ip")
print(mysql_ip)
print(oracle_ip)

将输出:


127.0.0.1

192.168.1.1

(3:获取指定section的配置信息

s=config.items("mysql-db")
print(s)

将输出:

[('ip', '127.0.0.1'), ('port', '3306'), ('user', 'root'), ('password', 'root')]

(4:设置某个option的值,如将mysql-db中的port改为3307:

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:857662006 
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
config.set("mysql-db","port","3307")
config.write(open("config.ini", "w"))  #记得一定要在修改完值以后进行文件write,否则修改不会生效

(5:添加一个section:

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:857662006 
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
config.add_section("DB2")

config.set("DB2","ip","192.168.1.2")
config.write(open("config.ini", "w")) #同样要写回,否则不生效

(6:移除一个section或者option:

config.remove_section("DB2")
config.remove_option("mysql-db","ip")
上一篇下一篇

猜你喜欢

热点阅读