• 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'))

  • 相关阅读:
    学习java随笔第二篇:java开发工具——Eclipse
    GDB
    【转】图像分割(Image Segmentation)
    [转]C#Windows窗体打开图像与保存
    【转】opencv 分水岭算法cvWatershed
    C#中Rectangle(Point, Size) 和Rectangle(Int32, Int32, Int32, Int32) 区别
    【转】数组和图像的转换
    .Net的垃圾回收机制(GC)之拙见——托管类型的垃圾回收
    【动态规划】滚动数组的求解(C++)
    C#编程语言之委托与事件(二)—— C#事件
  • 原文地址:https://www.cnblogs.com/onda/p/6950438.html
Copyright © 2020-2023  润新知