[python] python-dotenv를 사용하여 실행 환경 관리하기

파이썬 애플리케이션을 개발할 때, 실행 환경에 따라 다르게 동작해야 하는 경우가 있습니다. 예를 들어, 개발 환경에서는 디버그 모드로 애플리케이션을 실행하고, 프로덕션 환경에서는 보안을 강화한 상태로 실행해야 할 수도 있습니다. 이러한 실행 환경 관리를 위해 python-dotenv 패키지를 사용할 수 있습니다.

python-dotenv란?

python-dotenv는 파이썬 애플리케이션의 설정 파일을 관리하기 위한 도구입니다. 일반적으로 .env 또는 dotenv라는 이름의 파일에 설정을 저장하고, os.environ에 로드하여 파이썬 코드에서 사용할 수 있도록 합니다.

python-dotenv 설치하기

python-dotenv 패키지는 pip 패키지 매니저를 통해 간단하게 설치할 수 있습니다. 아래 명령어를 사용하여 설치해주세요.

pip install python-dotenv

사용 예제

1. .env 파일 생성하기

먼저, 프로젝트 루트 디렉토리에 .env 파일을 생성합니다. 이 파일에 실행 환경과 관련된 변수를 저장할 것입니다.

DEBUG=True
SECRET_KEY=mysecretkey123

2. 코드에 적용하기

다음으로, 파이썬 코드에서 python-dotenv를 사용하여 .env 파일을 로드해야 합니다.

# main.py

from dotenv import dotenv_values

# .env 파일 로드
config = dotenv_values(".env")

# 환경 변수 사용
debug_mode = config.get("DEBUG")
secret_key = config.get("SECRET_KEY")

print(f"DEBUG mode: {debug_mode}")
print(f"Secret key: {secret_key}")

위 코드에서 dotenv_values 함수는 .env 파일을 읽어 딕셔너리 형태로 반환합니다. 따라서, get 메서드를 사용하여 필요한 설정을 가져올 수 있습니다. 이후, 해당 설정을 사용하여 애플리케이션을 실행합니다.

3. 실행 결과 확인하기

아래 명령어를 사용하여 실행 결과를 확인해보세요.

python main.py

예상 결과는 다음과 같을 것입니다.

DEBUG mode: True
Secret key: mysecretkey123

결론

python-dotenv를 사용하면 애플리케이션의 실행 환경을 관리하고 설정을 손쉽게 변경할 수 있습니다. 이를 통해 개발, 테스트, 프로덕션 등 각각의 환경에 맞게 다르게 동작하는 애플리케이션을 개발할 수 있습니다.

더 자세한 내용은 공식 문서를 참고해주세요.