zoukankan      html  css  js  c++  java
  • python_day6 configparser模块

    作用:  增删改查  配置文件  (key,value类型)

    #####配置文件a.cfg

    # 注释1
    ; 注释2

    [section1]
    k1 = v1
    k2:v2
    user=egon
    age=18
    is_admin=true
    salary=31

    [section2]
    k1 = v1

    ###########读取

    import configparser

    config=configparser.ConfigParser()

    #查看所有
    config.read('a.cfg')

    #查看所有的标题
    res=config.sections() #['section1', 'section2']
    print(res)

    #查看标题section1下所有key=value的key
    options=config.options('section1')
    print(options) #['k1', 'k2', 'user', 'age', 'is_admin', 'salary']

    #查看标题section1下所有key=value的(key,value)格式
    item_list=config.items('section1')
    print(item_list) #[('k1', 'v1'), ('k2', 'v2'), ('user', 'egon'), ('age', '18'), ('is_admin', 'true'), ('salary', '31')]

    #查看标题section1下user的值=>字符串格式
    val=config.get('section1','user')
    print(val) #egon

    #查看标题section1下age的值=>整数格式
    val1=config.getint('section1','age')
    print(val1) #18

    #查看标题section1下is_admin的值=>布尔值格式
    val2=config.getboolean('section1','is_admin')
    print(val2) #True

    #查看标题section1下salary的值=>浮点型格式
    val3=config.getfloat('section1','salary')
    print(val3) #31.0

    #########改

    import configparser

    config=configparser.ConfigParser()
    config.read('a.cfg')


    #删除整个标题section2
    config.remove_section('section2')

    #删除标题section1下的某个k1和k2
    config.remove_option('section1','k1')
    config.remove_option('section1','k2')

    #判断是否存在某个标题
    print(config.has_section('section1'))

    #判断标题section1下是否有user
    print(config.has_option('section1',''))


    #添加一个标题
    config.add_section('egon')

    #在标题egon下添加name=egon,age=18的配置
    config.set('egon','name','egon')
    config.set('egon','age',18) #报错,必须是字符串


    #最后将修改的内容写入文件,完成最终的修改
    config.write(open('a.cfg','w'))

    ######添加

    import configparser
    config=configparser.ConfigParser()
    config.read('test.ini',encoding='utf-8')

    #检查
    has_sec=config.has_section('bitbucket.org')
    print(has_sec) #打印True

    #添加节点
    config.add_section('egon') #已经存在则报错
    config['egon']['username']='gangdan'
    config['egon']['age']='18'
    config.write(open('test.ini','w'))

    #删除节点
    config.remove_section('egon')
    config.write(open('test.ini','w'))

    #####删除

    import configparser
    config=configparser.ConfigParser()
    config.read('test.ini',encoding='utf-8')

    #检查
    has_sec=config.has_option('bitbucket.org','user') #bitbucket.org下有一个键user
    print(has_sec) #打印True

    #删除
    config.remove_option('DEFAULT','forwardx11')
    config.write(open('test.ini','w'))

    #设置
    config.set('bitbucket.org','user','gangdang')
    config.write(open('test.ini','w'))

  • 相关阅读:
    vscode开发环境安装配置-连载【2】-企业级系统开发实战连载系列 -技术栈(vue、element-ui、qt、c++、sqlite)
    nodejs开发环境安装-连载【1】-企业级系统开发实战连载系列 -技术栈(vue、element-ui、qt、c++、sqlite)
    vs 2015 菜单重复的问题解决方法
    ecshop代码详解之init.php
    前端jquery实现点击图片弹出大图层(且滚动鼠标滑轮图片缩放)
    thinkPHP中省市级联下拉列表
    mysql函数date_format统计刷选按年月日统计的数据
    jQuery插件实现select下拉框左右选择_交换内容(multiselect2side)
    php代码生成二维码
    ASP.NET无效的视图
  • 原文地址:https://www.cnblogs.com/onda/p/6950438.html
Copyright © 2011-2022 走看看