配置文件ini

一、 配置文件分类

1、xxx.ini:django项目部署uwsgi

2、xxx.yaml:java用得多,dockercompose里用到

3、xxx.py:python文件,如setting.py

3、使用场景:生产环境和测试环境的ip、数据库地址、账号、密码等都用配置文件存储

二、xxx.ini

1、写法

[section]

key1=val1

key2=val2

key3=val3

相当于字典:

section_dict = {

  "key1":"val1",

  "key2":"val2",

  "key3":"val3"

}

2、特点:

  2.1、section不能重复,相当于字典名不能重复

  2.2、同个section下的key不能重复

  2.3、等号两边不能有空格

  2.4、获取值默认是字符串格式

  2.5、添加、删除、修改只是对缓存区进行改变,不会修改真实的值

3、常用方法:

  3.1、获取所有的sections

from configparser import ConfigParser

conf = ConfigParser()
conf.read(filenames="my_test.ini",encoding="utf-8")

# 获取所有的sections
# 第一种方式
test_sections_1 = conf.sections()
print(test_sections_1)

# 第二种方式
test_sectons_2 = conf.keys()

  3.2、获取指定sections下所有的options

from configparser import ConfigParser

conf = ConfigParser()
conf.read(filenames="my_test.ini",encoding="utf-8")

# 获取所有sections的options(即key)
# 第一种方式
test_options_1 = conf.options(section="info")
print(test_options_1)  # ['name', 'pwd', 'phone']

# 第二种方式,获取key和value
test_options_2 = conf.items(section="info")
print(test_options_2)  # [('name', 'csk'), ('pwd', '123'), ('phone', '110')]

  3.3、直接获取key的value值

from configparser import ConfigParser

conf = ConfigParser()
conf.read(filenames="my_test.ini",encoding="utf-8")

# 直接获取options(即key)的value,
# 默认获取到的是str
value1 = conf.get(section="info",option="name")
print(value1)

# 获取布尔值
value2 = conf.getboolean(section="score",option="key1")
print(value2,type(value2))

# 获取数值(int类型)不能使用小数,只能使用整数
value3 = conf.getint(section="score",option="key2")
print(value3)

# 获取数值(float类型)
value4 = conf.getfloat(section="score",option="key3")
print(value4)

4、其他操作

  4.1、添加sections(操作内存)

  4.2、添加key和value(操作内存)

  4.3、删除(操作内存)

  4.4、写入文件(将内存中所有的数据写入到文件进行覆盖,初始化的时候读取到的是所有对象)

原文地址:https://www.cnblogs.com/nanjo4373977/p/15073317.html