env_loader.py 773 B

1234567891011121314151617181920212223242526272829
  1. import os
  2. from dotenv import load_dotenv
  3. def load_env(env: str = None):
  4. """
  5. 根据传入的环境名加载对应的 .env 文件,默认加载 .env
  6. """
  7. if env is None:
  8. env = os.getenv("ENV", "prod") # 默认prod
  9. dotenv_path = os.path.join(os.path.dirname(os.path.dirname(__file__)), f".env.{env}")
  10. load_dotenv(dotenv_path)
  11. print(f"加载环境配置文件: {dotenv_path}")
  12. def get_env(key: str, default: str = "") -> str:
  13. """获取环境变量"""
  14. return os.getenv(key, default)
  15. def get_int_env(key: str, default: int = 0) -> int:
  16. """获取整数类型环境变量"""
  17. try:
  18. return int(os.getenv(key, default))
  19. except (TypeError, ValueError):
  20. return default
  21. # 自动加载环境变量
  22. load_env()