10.Python config.json 파일 읽고 저장하는 방법 — 설정 파일 관리 완벽 가이드
저도 처음엔 데이터베이스 주소나 결과물 저장 경로를 소스 코드 상단에 변수로 적어두고 썼습니다. 개발할 때는 로컬 경로로 바꿨다가, 서버에 올릴 때는 다시 운영 서버 경로로 바꾸는 작업을 매번 수동으로 진행했죠. 그러다 어느 날 단 하나의 경로를 미처 고치지 않고 배포하는 바람에, 실제 운영 데이터가 로컬 테스트 데이터에 덮어써 지는 대형 사고 를 쳤습니다. 수습하느라 주말 16시간을 통째로 날린 뒤 , 설정값은 무조건 코드와 분리해야 한다는 걸 깨닫고 config.json 을 도입했습니다. Python 프로젝트에서 config.json 파일을 활용한 설정 관리는 코드의 유연성과 유지보수성을 크게 향상시킵니다. 이 글에서는 JSON 파일로 설정을 읽고 저장하는 기본부터, 중첩 구조 처리, 기본값 관리, 그리고 .env 파일과의 역할 분리까지 — VS Code 환경에서 실무에 바로 쓸 수 있는 수준으로 안내해 드리겠습니다. config.json이 필요한 이유 — 코드와 설정을 분리하는 것 설정값을 코드에 직접 넣으면 생기는 문제 프로그램을 개발하다 보면 자주 바뀌는 값들이 생깁니다. API 서버 주소, 최대 요청 횟수, 파일 저장 경로, 알림 조건 수치 같은 것들입니다. 이 값들을 코드 안에 직접 넣으면 값 하나를 바꿀 때마다 코드를 열고, 수정하고, 저장하고, 다시 실행해야 합니다. 이를 레스토랑에 비유하면 이렇습니다. 메뉴판(config.json)은 따로 있고, 요리사(코드)는 메뉴판을 보고 요리합니다. 메뉴를 바꿀 때 요리사의 머릿속(코드)을 바꾸는 것이 아니라 메뉴판(설정 파일)만 바꾸면 됩니다. 코드는 건드리지 않아도 프로그램의 동작이 달라집니다. .env 파일과 config.json의 역할 차이 두 파일을 함께 쓰는 경우가 많아 혼동하기 쉽습니다. 역할은 명확히 다릅니다. 구분 .env 파일 config.json 용도 비밀 정보 (API Key, 비밀번호) 일반 설정값 (경로, 수치, 옵션)...