• python configparser模块


      在python3中使用configparser,configparser模块用于操作配置文件,包含一个或多个结(selection),每个节可以有多个参数(键=值)

      config文件的形式

    [section1]
    k1 = v1
    k2:v2
    
    [section2]
    k1 = v1
    

      创建一个config.ini文件

    [ssh0]
    host = 10.100.46.101
    port = 22
    usr = root
    pwd = 123456
    timeout = 1.0

      1.  获取所有的节点

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

      [root@localhost 0406]# python3 configparser_test.py
      ['ssh0']

      2.  获取指定节点下的所有的键值对

    import configparser
    config = configparser.ConfigParser()
    config.read('config.ini',encoding='utf-8')
    ret = config.items('ssh0')
    print(ret)  

      [root@localhost 0406]# python3 configparser_test.py
      [('host', '10.100.46.101'), ('port', '22'), ('usr', 'root'), ('pwd', '123456'), ('timeout', '1.0')]

      3.  获取指定节点下所有的键

    import configparser
    config = configparser.ConfigParser()
    config.read('config.ini',encoding='utf-8')
    ret = config.options('ssh0')
    print(ret) 

      [root@localhost 0406]# python3 configparser_test.py
      ['host', 'port', 'usr', 'pwd', 'timeout']

      4.  获取指定节点下指定key的值

    import configparser
    config = configparser.ConfigParser()
    config.read('config.ini',encoding='utf-8')
    ret1 = config.get('ssh0','host')
    ret2 = config.getint('ssh0','port')
    ret3 = config.getfloat('ssh0','timeout')
    print(ret1,ret2,ret3)  

      [root@localhost 0406]# python3 configparser_test.py
      10.100.46.101 22 1.0

      5.  检查,添加,删除节点

    import configparser
    config = configparser.ConfigParser()
    config.read('config.ini',encoding='utf-8')
    
    has_sec = config.has_section('ssh0')
    print(has_sec)   #如果存在则返回true
    
    #config.add_section('sec_1')      #添加节点
    #config.write(open('config.ini','w'))
    
    config.remove_section('sec_1')    #删除节点
    config.write(open('config.ini','w'))

      6.  检查,删除,设置指定组内的键值对

    import configparser
    config = configparser.ConfigParser()
    config.read('config.ini',encoding='utf-8')
    
    has_sec = config.has_section('ssh0')
    print(has_sec)   #如果存在则返回true
    
    config.remove_option('ssh0','timeout')    #移除ssh节点中timeout键值对
    config.write(open('config.ini','w'))
    
    config.set('ssh0','test','123')       #添加一个test=123的键值对
    config.write(open('config.ini','w'))
  • 相关阅读:
    JdbcTemplate
    Spring AOP——基于XML的进阶案例
    Spring
    面试题
    切面编程
    选择题
    Spring核心概念
    缓存
    BFC 神奇背后的原理
    git 教程
  • 原文地址:https://www.cnblogs.com/homle/p/8728154.html
Copyright © 2020-2023  润新知