Python 객체와 JSON 문자열을 변환합니다.
json.dumps는 Python 값을 JSON 문자열로 직렬화하고 json.loads는 문자열을 Python 값으로 역직렬화합니다. 딕셔너리, 리스트, 문자열, 숫자, bool, None은 대응되지만 set, datetime, 사용자 객체는 변환 방법을 정해야 합니다.
json.dumps가 딕셔너리를 JSON 문자열로 바꾸면서 Python의 True를 true로 적고, indent=2로 키마다 줄을 나눕니다. json.loads가 그 문자열을 다시 딕셔너리로 돌려놓아 restored['title']로 값을 꺼낼 수 있습니다. JSON 객체의 키는 항상 문자열이라, 숫자 키를 가진 딕셔너리는 한 번 왕복하면 문자열 키로 돌아옵니다.
ensure_ascii=False를 사용하면 한글을 읽기 좋게 유지하고 indent로 개발용 들여쓰기를 적용할 수 있습니다. 외부 JSON은 파싱 성공 뒤에도 필수 키와 타입을 검증합니다.
API 계약에서는 날짜, 큰 숫자, null, 알 수 없는 필드 처리 규칙을 문서화하고 버전 호환성을 관리합니다.
JSON 문자열의 true, false, null은 Python 코드의 True, False, None과 표기가 다릅니다.
직접 바꿔보세요tags 배열을 추가하고 복원한 데이터에서 첫 태그를 출력하세요.
실행 버튼을 누르면 결과가 여기에 표시됩니다.