方法 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。
使用多个配置文件。
读取配置文件的代码。
使用 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 文件。
:。
处理命令行参数的模块。 export DB_USER=dev_userexport DB_PASSWORD=dev_password。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}")。
和。:。
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。