当前位置: 首页 > news >正文

Python程序常用的配置文件格式及例子(上)

Python 中常用的配置文件格式有多种,每种格式都有其特点和适用场景。以下是常见的配置文件类型及简要说明:


1. INI 格式

  • 特点:简单键值对,支持分节(Section)。
  • 文件扩展名.ini, .cfg
  • Python 库:内置 configparser 模块。
  • 示例
     

    ini

    [database]
    host = localhost
    port = 3306
    user = admin
    password = secret
  • 适用场景:轻量级配置,结构分层清晰。

2. JSON 格式

  • 特点:结构化数据,支持嵌套,易读性高。
  • 文件扩展名.json
  • Python 库:内置 json 模块。
  • 示例
     

    json

    {
    "database": {
    "host": "localhost",
    "port": 3306,
    "credentials": {
    "user": "admin",
    "password": "secret"
    }
    }
    }
  • 适用场景:复杂数据结构,需跨语言兼容时。

3. YAML 格式

  • 特点:易读性强,支持复杂结构(列表、字典),支持注释。
  • 文件扩展名.yaml, .yml
  • Python 库:需安装 PyYAML 库。
  • 示例
     

    yaml

    database:
    host: localhost
    port: 3306
    credentials:
    user: admin
    password: secret
  • 适用场景:需要高可读性和复杂配置时。

4. TOML 格式

  • 特点:专为配置设计,支持更丰富的数据类型(如日期、时间)。
  • 文件扩展名.toml
  • Python 库:需安装 tomlkittomli
  • 示例
     

    toml

    [database]
    host = "localhost"
    port = 3306
    [database.credentials]
    user = "admin"
    password = "secret"
  • 适用场景:需要强类型或复杂配置的场景。

5. 环境变量

  • 特点:通过系统环境变量传递配置,适合动态环境。
  • Python 库:内置 os 模块。
  • 示例
     

    bash

    # 终端中设置
    export DB_HOST="localhost"
    export DB_PORT=3306
     

    python

    import os
    db_host = os.getenv("DB_HOST")
    db_port = int(os.getenv("DB_PORT"))
  • 适用场景:容器化部署、多环境配置(开发/生产)。

6. XML 格式

  • 特点:结构化标记语言,支持复杂嵌套。
  • 文件扩展名.xml
  • Python 库:内置 xml.etree.ElementTree
  • 示例
     

    xml

    <database>
    <host>localhost</host>
    <port>3306</port>
    <credentials>
    <user>admin</user>
    <password>secret</password>
    </credentials>
    </database>
  • 适用场景:需要与 Java 等其他语言交互时。

7. Python 脚本(.py 文件)

  • 特点:直接编写 Python 代码作为配置。
  • 文件扩展名.py
  • 示例
     

    python

    # config.py
    DATABASE = {
    "host": "localhost",
    "port": 3306,
    "user": "admin",
    "password": "secret"
    }
     

    python

    from config import DATABASE
  • 适用场景:需要动态生成配置或复杂逻辑时。

8. .env 文件

  • 特点:类似环境变量,但存储在文件中。
  • 文件扩展名.env
  • Python 库:需安装 python-dotenv
  • 示例
     

    env

    DB_HOST=localhost
    DB_PORT=3306
     

    python

    from dotenv import load_dotenv
    import os
    load_dotenv()
    db_host = os.getenv("DB_HOST")
  • 适用场景:管理敏感信息(需配合 .gitignore)。

选择建议

  • 简单配置:INI、JSON、环境变量。
  • 复杂结构:YAML、TOML。
  • 跨语言/兼容性:JSON、XML。
  • 动态环境:环境变量、.env 文件。

根据项目需求(如可读性、复杂度、维护性)选择合适的格式即可。

下一篇将演示如何通过python代码读取以上配置文件

相关文章:

  • Linux搭建conda虚拟环境流程
  • C++ vcpkg下载rttr等类库
  • 【3D模型】【游戏开发】【Blender】Blender模型分享-狮头木雕附导入方法
  • Redis 安装详细教程(小白版)
  • 网络流基本概念及实现算法
  • uni-app——网络API
  • Java 中 Vector 的底层数据结构及相关分析
  • 创建Vue3工程
  • 【Axure高保真原型】增删改饼图
  • springmvc中如何自定义入参注解并自动注入值
  • 为什么要用linux?
  • C#—【特性详解以及自定义特性和通过反射读取特性】
  • 架构师面试(十八):I/O 原理
  • 前端开发:这就是终点吗?
  • CXL协议之FM(Fabric Management)解释
  • HTML 列表
  • 3.17 配置hadoop集群-理论准备
  • MySql补充
  • 20250319在荣品的PRO-RK3566开发板的buildroot系统下使用集成的QT应用调试串口UART3
  • 大模型学习-从零开始在colab训练大模型
  • 南京优质网站建设方案/有名的seo外包公司
  • 网站建设的主题什么比较好/百度网址大全网址导航
  • 案例平台 网站/广告设计需要学什么
  • 黑龙江省住房和建设厅网站首页/艾滋病阻断药
  • wordpress+国内不使用/seo关键词排名价格
  • 建设一个微商的网站/seo是什么品牌