Python 딕셔너리를 JSON으로 변환하는 방법
James Reed
Infrastructure Engineer · Leapcell

Key Takeaways
json.dumps()
를 사용하여 Python 딕셔너리를 JSON 형식의 문자열로 변환합니다.json.dump()
를 사용하여 JSON 데이터를 파일에 직접 씁니다.indent
매개변수는 예쁜 출력을 통해 JSON 가독성을 향상시킵니다.
Python을 사용할 때, 특히 웹 개발이나 데이터 교환에서 딕셔너리를 JSON(JavaScript Object Notation)으로 변환하는 것은 흔하고 필수적인 작업입니다. JSON은 사람이 읽고 쓰기 쉽고, 기계가 파싱하고 생성하기 쉬운 경량의 데이터 교환 형식입니다.
이 기사에서는 내장된 json
모듈을 사용하여 Python 딕셔너리를 JSON 문자열로 변환하는 방법과 함께 실용적인 예제 및 팁을 살펴보겠습니다.
json
모듈 가져오기
Python은 JSON 데이터를 쉽게 인코딩하고 디코딩할 수 있는 json
이라는 표준 라이브러리를 제공합니다. 사용하기 전에 가져와야 합니다.
import json
Python 딕셔너리 생성
샘플 딕셔너리부터 시작하겠습니다.
data = { "name": "Alice", "age": 30, "is_employee": True, "departments": ["HR", "Finance"], "details": { "position": "Manager", "full_time": True } }
딕셔너리를 JSON 문자열로 변환
json.dumps()
메서드를 사용하여 Python 딕셔너리를 JSON 형식의 문자열로 변환할 수 있습니다.
json_string = json.dumps(data) print(json_string)
출력:
{"name": "Alice", "age": 30, "is_employee": true, "departments": ["HR", "Finance"], "details": {"position": "Manager", "full_time": true}}
다음 사항에 유의하십시오.
- Python의
True
및False
는 JSON에서true
및false
가 됩니다. - 딕셔너리는 기본적으로 한 줄의 JSON 문자열로 변환됩니다.
JSON 예쁘게 출력
출력을 더 읽기 쉽게 만들려면 indent
매개변수를 사용할 수 있습니다.
json_string = json.dumps(data, indent=4) print(json_string)
출력:
{ "name": "Alice", "age": 30, "is_employee": true, "departments": [ "HR", "Finance" ], "details": { "position": "Manager", "full_time": true } }
JSON을 파일에 쓰기
JSON 데이터를 파일에 저장하려면 dumps()
대신 json.dump()
를 사용하십시오.
with open("data.json", "w") as file: json.dump(data, file, indent=4)
결론
json
모듈을 사용하면 Python 딕셔너리를 JSON으로 변환하는 것이 간단합니다. 몇 줄의 코드만으로 API, 구성 파일 또는 데이터 스토리지를 위해 데이터를 직렬화할 수 있습니다. 문자열에는 dumps()
를 사용하고 파일에 직접 쓰려면 dump()
를 사용하고 가독성을 향상시키기 위해 indent
와 같은 매개변수를 활용하십시오.
FAQs
dumps()
는 문자열을 반환합니다. dump()
는 파일에 직접 씁니다.
Python True
및 False
는 JSON에서 true
및 false
가 됩니다.
예, dumps()
또는 dump()
에서 indent
매개변수를 사용하십시오.
Leapcell은 백엔드 프로젝트 호스팅을 위한 최고의 선택입니다.
Leapcell은 웹 호스팅, 비동기 작업 및 Redis를 위한 차세대 서버리스 플랫폼입니다.
다국어 지원
- Node.js, Python, Go 또는 Rust로 개발하십시오.
무제한 프로젝트를 무료로 배포하십시오
- 사용량에 대해서만 지불하십시오. 요청도 없고 요금도 없습니다.
탁월한 비용 효율성
- 유휴 요금 없이 종량제로 결제하십시오.
- 예: $25는 평균 응답 시간 60ms에서 694만 건의 요청을 지원합니다.
간소화된 개발자 경험
- 간편한 설정을 위한 직관적인 UI.
- 완전 자동화된 CI/CD 파이프라인 및 GitOps 통합.
- 실행 가능한 통찰력을 위한 실시간 메트릭 및 로깅.
손쉬운 확장성 및 고성능
- 쉬운 동시성 처리를 위한 자동 확장.
- 제로 운영 오버헤드. 구축에만 집중하십시오.
설명서에서 자세히 알아보십시오!
X에서 팔로우하십시오: @LeapcellHQ