美文网首页开源优测
[快学Python3]INI文件读写

[快学Python3]INI文件读写

作者: 苦叶子 | 来源:发表于2017-06-28 09:25 被阅读519次

    概述

    ini是我们常见到的配置文件格式之一。

    ini是微软Windows操作系统中的文件扩展名(也常用在其他系统)。

    ini“初始化(Initial)”的缩写。正如该术语所表示的,INI文件被用来对操作系统或特定程序初始化或进行参数设置。

    其基本组成形式如下:

    [section_1]
    key1=value1
    key2=value2
    key3=value3
    key4=value4
    
    [section_2]
    key1=value1
    key2=value2
    key3=value3
    key4=value4
    

    我们通过Python的ConfigParser模块来对ini文件进行读写操作。

    ConfigParser

    读取

    • read(filename) 读取ini文件内容
    • sections() 获取所有的section,并以列表的形式返回
    • options(sections) 获取指定section的所有option
    • get(section,option) 获取section中option的值,返回为string类型

    写入

    • set( section, option, value) 对section中的option进行更新

    实例

    我们先生成一个ini文件,并写入数据,然后在读取出来显示。

    # -*- coding:utf-8 -*-
    
    __author__ = '苦叶子'
    
    # 导入模块
    import configparser
    
    
    if __name__ == "__main__":
        # 先构建一个对象
        config = configparser.ConfigParser()
    
        # 来让我们写入几组数据
        # 先新增一个section
        config.add_section("开源优测")
    
        # 在新增的section下加key-value键值对
        config.set("开源优测", "微号", "DeepTest")
        config.set("开源优测", "口号", "自我娱乐娱乐")
        config.set("开源优测", "号外", "其实我开了好多号")
    
        # 再新增一个section,但不加key-value键值对
        config.add_section("我好孤单")
    
        # 写入文件
        with open('iniConfig.ini', 'w') as configfile:
            config.write(configfile)
    
        #####################################
        # 下面开始我们来把刚才的ini文件读出来看看
        config.read("iniConfig.ini")
    
        # 获取它的所有section
        sections = config.sections()
        print(sections)
    
        # 获取section下所有的options
        for sec in sections:
            options = config.options(sec)
            print(options)
    
        # 根据sections和options获取对应的value值
        for sec in sections:
            for option in config.options(sec):
                print("[%s] %s=%s " % (sec, option, config.get(sec, option)))
    

    小结

    对INI文件应用场景,一般都是用于做初始化配置文件用,当然你要是愿意也可以用来做数据的存储。

    留个小题目,请尝试自己用类封装一个通用的ini文件操作类。

    相关文章

      网友评论

        本文标题:[快学Python3]INI文件读写

        本文链接:https://www.haomeiwen.com/subject/ysnycxtx.html