首页 > 其他 > 详细

.conf配置文件那点事儿

时间:2021-06-17 16:48:22      阅读:14      评论:0      收藏:0      [点我收藏+]

一、配置文件

  • 配置文件示例

    [mysql]
    default-character-set=utf-8
    ?
    [mysqld]
    port = 3306
    basedir = ***
    datadir = ***
    max_connections = 200
    character-set-server = utf-8
    default-storage-engine=INNODB
    explicit_defaults_for_timestamp=true
  • 场景举例

    • 多出地方需要同一个参数,此时最好配置,这样改动一处就可以了

    • 经常发生变化的变量也可以做配置文件.--->要区别于参数化

  • 常见的配置文件格式

    • .ini .conf .cfg

  • 配置文件对象(忽略*)

    • section 例如:

      [mysql]
      *** = **

       

    • option

      [***]
      port = 3306
      basedir =
      datadir =
      max_connections = 200
      character-set-server = utf-8
      default-storage-engine=INNODB
      explicit_defaults_for_timestamp=true

二、configparser模块

  • 打开配置文件

    • conf = configparser.ConfigParser() # 实例化一个对象
      conf.read(‘my.conf‘, encoding=‘utf-8‘) # 打开my.conf配置文件
  • 常用方法

    • 配置文件

      [name] # section
      leader = 张三
      student = 李四
      ?
      [age]
      # 以下为 option
      leader = 28
      student = 18
    • 解析配置文件

      # @Author    : ╰☆H.俠ゞ
      # -*-coding=utf-8-*-
      # =============================================================
      ?
      import configparser
      conf = configparser.ConfigParser()
      # 打开my.conf配置文件
      conf.read(‘my.conf‘, encoding=‘utf-8‘)
      print(conf.sections())
      print(conf.options(‘name‘))
      print(conf.get(‘name‘, ‘leader‘))  # 打印出读取出的leader的value
      print(conf.items(‘name‘))
      print(dict(conf.items(‘name‘)))  # 当可以转化成字典时,用dict函数可以转化为字典格式
      ?
      "D:\Program Files\pythonProject_CTTQ\venv\Scripts\python.exe" "D:/Program Files/pythonProject_CTTQ/Python_demo/lemonBan/配置文件/myconf.py"
      [‘name‘, ‘age‘]
      [‘leader‘, ‘student‘]
      张三
      [(‘leader‘, ‘张三‘), (‘student‘, ‘李四‘)]
      {‘leader‘: ‘张三‘, ‘student‘: ‘李四‘}
      28
      99.5
      True
      ?
      Process finished with exit code 0

       

    • sections() 获取所有的section,并以列表的形式返回

      [‘name‘, ‘age‘]
    • options(section) 获取该section中所有的option

      [‘leader‘, ‘student‘]
    • get(section, option) 获得section中该option的value值

      张三
    • items(section) 获取该section中option的所有键值对

      [(‘leader‘, ‘张三‘), (‘student‘, ‘李四‘)]
      {‘leader‘: ‘张三‘, ‘student‘: ‘李四‘}
    • getint(section, option) 获得section中该option的int型value值

      28
    • getfloat(section, option) 获得section中该option的float型value值

      99.5
    • getboolean(section, option) 获得section中该option的布尔型value值

      True

随笔

控制语句

  • for i in range(10):
    print(i)
    else:
    pass
    # for循环正常执行完,就会执行else语句;for循环非正常运行阻断,则不会执行else语句,如 break
  •  

.conf配置文件那点事儿

原文:https://www.cnblogs.com/Hxia/p/14893421.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!