• 配置文件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、写入文件(将内存中所有的数据写入到文件进行覆盖,初始化的时候读取到的是所有对象)

  • 相关阅读:
    10 个让人惊讶的 jQuery 插件
    URL编码方法比较
    Java大文件分片上传/多线程上传源码
    Java大文件分片上传/多线程上传代码
    Java大文件分片上传/多线程上传插件
    Java大文件分片上传/多线程上传控件
    python函数
    关于言谈
    Sql语句之select 5种查询
    openstack之网络基础
  • 原文地址:https://www.cnblogs.com/nanjo4373977/p/15073317.html
Copyright © 2020-2023  润新知