• python 之ConfigParser


    1. ConfigParser 简介
      ConfigParser是用来操作配置文件的模块。
        说明:[**]为配置文件的section,基本格式为
        [section]
        key = value
      eg:
        [db]
        db_host = 127.0.0.1
        db_port = 22
        db_user = root
        db_pass = rootroot
        [concurrent]
        thread = 10
        processor = 20
    2. eg
      #-*- encoding:UTF-8 -*-
       import ConfigParser
      
      def main():
          #初始化
           cf = ConfigParser.ConfigParser()
           cf.read("test.conf")
      
          # 获得所有的section
          section = cf.sections()
          print 'section:', section
      
           #获取指定section下所有的option(key)
          keys = cf.options("db")
          print 'options:', keys
      
          #获取指定section的option的值
          value = cf.items("db")
          print 'db:', value
       
          #可以按照类型读取出来,同样的还有getfloat、getboolean
          db_host = cf.get("db", "db_host")
          db_port = cf.getint("db", "db_port")
          db_user = cf.get("db", "db_user")
          db_pass = cf.get("db", "db_pass")
           # 返回的是整型的
          threads = cf.getint("concurrent", "thread")
          processors = cf.getint("concurrent", "processor")
          print "db_host:", db_host
          print "db_port:", db_port
          print "db_user:", db_user
          print "db_pass:", db_pass
          print "thread:", threads
          print "processor:", processors
      
          #修改一个option(key)的值,(记得写回去)
          cf.set("db", "db_pass", "hanhong")
          cf.write(open("test.conf", "w"))
      
          #添加一个section。(写回去)
          cf.add_section('liuqing')
          cf.set('liuqing', 'int', '15')
          cf.set('liuqing', 'bool', 'true')
          cf.set('liuqing', 'float', '3.1415')
          cf.set('liuqing', 'baz', 'fun')
          cf.set('liuqing', 'bar', 'Python')
          cf.set('liuqing', 'foo', '%(bar)s is %(baz)s!')
          cf.write(open("test.conf", "w"))
      
          #移除section 或者option 。(只要进行了修改就要写回)
          cf.remove_option('liuqing','int')
          cf.remove_section('liuqing')
          cf.write(open("test.conf", "w"))
      
      if __name__ == "__main__":
          main()

      输出:

      section: ['db', 'concurrent']
      options: ['db_host', 'db_port', 'db_user', 'db_pass']
      db: [('db_host', '127.0.0.1'), ('db_port', '22'), ('db_user', 'root'), ('db_pass', 'rootroot')]
      db_host: 127.0.0.1
      db_port: 22
      db_user: root
      db_pass: rootroot
      thread: 10
      processor: 20
      
  • 相关阅读:
    找工作就上智联,效果真快,然而让我去的公司都是泡我呢
    只能面深度学习岗和算法岗,其他都不会
    2维矩阵前缀和技巧题目
    计算机基础背诵
    集合函数AVG,SUM,MAX,MIN
    集合函数COUNT
    修改删除数据记录
    多表查询
    查询数据表中的记录
    SQL基本语句(3) LOAD DATA INFILE
  • 原文地址:https://www.cnblogs.com/yunsicai/p/3571167.html
Copyright © 2020-2023  润新知