2023-08-24 20:59:57

파이썬 딕셔너리를 json으로 변환하고 싶을 때는 json.dumps() 함수를 사용하면 됩니다.

 

import json


x = {'apple': '사과', 'banana': '바나나'}

json_string = json.dumps(x)
print(json_string)

# {"apple": "\uc0ac\uacfc", "banana": "\ubc14\ub098\ub098"}

 

그런데 한글 부분이 \uc0ac 등으로 변환되어 있습니다. 이런 경우에는 ensure_ascii 옵션을 False로 설정해줘야 문자들이 있는 그대로 출력됩니다. 

 

import json


x = {'apple': '사과', 'banana': '바나나'}

json_string = json.dumps(x, ensure_ascii=False)
print(json_string)

# {"apple": "사과", "banana": "바나나"}

 

그리고 조금 더 구조화된 상태로 예쁘게 출력되게 하고 싶은 경우에는 indent 옵션을 추가해줄 수 있습니다.

 

import json


x = {'apple': '사과', 'banana': '바나나'}

json_string = json.dumps(x, ensure_ascii=False, indent=2)
print(json_string)

# {
#   "apple": "사과",
#   "banana": "바나나"
# }

 

참고자료

[1] https://docs.python.org/ko/3/library/json.html