[python] python-dotenv를 사용하여 테스트 환경 설정하기

Python 프로젝트를 개발하면서 테스트를 할 때, 각각의 환경에 맞게 설정값을 변경해야 할 때가 있습니다. 이를 위해 .env 파일을 사용하는 것은 매우 유용한 방법입니다. 이번 글에서는 python-dotenv 라이브러리를 사용하여 테스트 환경을 설정하는 방법에 대해 알아보겠습니다.

python-dotenv란?

python-dotenv는 Python 프로젝트에서 .env 파일을 읽어서 환경변수로 설정해주는 라이브러리입니다. .env 파일은 키-값 쌍으로 구성되어 있는데, 이를 읽어와서 현재 실행 중인 프로세스의 환경변수로 설정합니다. 이를 통해 프로젝트의 설정값을 간편하게 변경하고 관리할 수 있습니다.

설치

먼저 python-dotenv를 설치해야 합니다. pip를 사용하여 아래 명령을 실행해주세요.

pip install python-dotenv

사용법

  1. 프로젝트 루트에 .env 파일을 만듭니다. 이 파일은 설정값을 담고 있는 텍스트 파일입니다.

  2. .env 파일에 설정할 값을 입력합니다. 예를 들어, 다음과 같이 DATABASE_URL 변수를 설정한다고 가정해봅시다.

DATABASE_URL=mysql://localhost:3306/mydatabase
  1. Python 코드에서 dotenv 라이브러리를 import 하고, load_dotenv() 함수를 호출하여 .env 파일의 값을 로드합니다. 이렇게 하면 .env 파일의 값이 환경변수로 설정됩니다.
from dotenv import load_dotenv

load_dotenv()  # .env 파일의 값 로드
  1. 이제 환경변수를 사용하여 필요한 설정값을 가져올 수 있습니다.
import os

database_url = os.environ.get('DATABASE_URL')
print(database_url)
# 출력: mysql://localhost:3306/mydatabase

.env 파일 포맷

.env 파일은 각 줄마다 키=값 형태로 구성되어야 합니다. 주석은 #으로 시작하며, 빈 줄은 무시됩니다.

# 주석 예시
KEY1=value1
KEY2=value2

환경 파일의 보안

.env 파일에는 주로 비밀번호, API 키 등의 민감한 정보가 포함될 수 있으므로 보안에 유의해야 합니다. .env 파일의 권한을 제한하고, 버전 관리 시스템에 포함시키지 않는 등의 보안 조치를 취하는 것이 좋습니다.

결론

python-dotenv를 사용하면 프로젝트의 설정값을 간편하게 변경할 수 있습니다. .env 파일을 사용하여 테스트 환경을 설정하는 것은 매우 편리하며, 서로 다른 환경에서 사용하는 설정값들을 효율적으로 관리할 수 있습니다.