方法 4、使用多个配置文件

发布时间:2025-06-24 11:09:00  作者:北方职教升学中心  阅读量:443


: 根据输入的命令行参数选择配置。

方法2、:。

方法 4、使用多个配置文件。代码示例。

方法2、

方法 3:使用命令行参数。:。

[DEFAULT]host = prod.db.serverport = 3306[DATABASE]user = prod_userpassword = prod_passworddatabase = prod_db。生产)使用不同的配置文件。

:。

config_dev.ini。

假设有两个配置文件:config_dev.ini。

  1. 使用多个配置文件。

读取配置文件的代码。

  • 使用 JSON 或 YAML 文件。设置环境变量(Linux/Mac)

    :。

    import osuser = os.getenv('DB_USER', 'default_user') # 默认为 'default_user'password = os.getenv('DB_PASSWORD', 'default_password')print(f"User: {user}")print(f"Password: {password}")。使用环境变量

    您可以在操作系统中直接设置环境变量,然后在代码中读取它们。使用 JSON 或 YAML 文件您可以创建配置文件,支持各种环境的变量。

    config.json。: 利用操作系统的环境变量获取参数。: 根据不同的环境(如开发、

    [DEFAULT]host = localhostport = 3306[DATABASE]user = dev_userpassword = dev_passworddatabase = dev_db。

  • 方法1、 您可以使用。

    读取 JSON 配置代码。。{    "dev": {        "host": "localhost",        "user": "dev_user",        "password": "dev_password"    },    "prod": {        "host": "prod.db.server",        "user": "prod_user",        "password": "prod_password"    }}。

    方法 4、

    config_prod.ini。

  • 使用环境变量。读取环境变量代码。: 可以使用配置文件 JSON 或 YAML 格式,支持各种环境的变量。测试、:。

  • import argparseparser = argparse.ArgumentParser(description='App Configuration')parser.add_argument('--env', type=str, default='dev', help='Environment: dev or prod')args = parser.parse_args()if args.env == 'dev': user = 'dev_user' password = 'dev_password'else: user = 'prod_user' password = 'prod_password'print(f"User: {user}")print(f"Password: {password}")。使用 JSON 或 YAML 文件。:。使用环境变量。

    :。

    处理命令行参数的模块。 config_prod.ini。import jsonimport os# 获取环境变量env = os.getenv('ENV', 'dev') # 默认为 'dev'# 读取 JSON with配置文件 open('config.json') as json_file: config = json.load(json_file)# hostt获取相应环境的配置 = config[env]['host']user = config[env]['user']password = config[env]['password']print(f"Host: {host}")print(f"User: {user}")print(f"Password: {password}")。和。

    export DB_USER=dev_userexport DB_PASSWORD=dev_password。

    :。

    import configparserimport os# 获取环境变量env = os.getenv('ENV', 'dev')  # 默认为 'dev'# config_根据环境选择配置文件file = f'config_{env}.ini'config = configparser.ConfigParser()config.read(config_file)# hosttttt访问配置变量 = config['DEFAULT']['host']port = config.getint('DEFAULT', 'port')user = config['DATABASE']['user']password = config['DATABASE']['password']database = config['DATABASE']['database']print(f"Host: {host}")print(f"Port: {port}")print(f"User: {user}")print(f"Password: {password}")print(f"Database: {database}")。

  • 使用命令行参数。argparse。