본문 바로가기
programming/Python

파이썬 json 객체 응용 using python json object

by 개코 - 개발과 코딩 2021. 12. 12.

파이썬 객체 중 json 은 데이터 구조로 활용도가 높다. 응용의 빈도가 높고 이기종간의 통신에도 많이 사용된다. api와 같은 데이터 요청과 응답에도 사용된다. 이 때 json 객체는 문자열로 변환을 하게 되는 경우들이 많다. json 을 응용하는 측면은 다양하기 떄문에 json 의 경우 데이터 구조를 어떻게 설계할 지도 생각해 봐야 한다.

파이썬 json 객체 응용
using python json object

파이썬 객체 중 json 은 데이터 구조로써 널리 사용된다.

파이썬 뿐만 아니라 자바스크립트부터 C언어까지 다방면으로 유용하게 사용되는 것이기도 하다.

장점은 많지만 데이터 구조가 복잡해 지더라도 json 문자열로 변환이 가능하다.

json 문자열로 변환하면 이기종간의 통신과 데이터 공유 등 활용도가 높아진다.

json 데이터 구조

간단히 json 데이터 구조를 보자.

json 은 기본은 key와 value 가 한 쌍으로 이루어져 여러 데이터가 들어가 있는 컬렉션이다.

파이썬을 공부해본 사람이라면 딕셔너리에 대해 잘 알고 있다.

json 객체 또한 데이터 타입은 딕셔너리이다.

딕셔너리에는 다양한 데이터가 들어가며, 데이터 타입도 여러가지가 들어간다.

{"key" : "value"}

[
	{"key" : "value"},
    {"key" : "value"},
    {"key" : "value"}
]

샘플코드

파이썬으로 json 객체를 만들고 json 문자열로 변경해 본다.

당연히 이 글을 보는 사람이라면 여러가지 데이터 구조를 볼 수 있었을 것이다.

대충 하나만 파이썬 예제로 만들어 본다.

print("----------")

import json

vData = {
    "comp" : "현대자동차",
    "order" : "인기순",
    "list" : [
        { "type" : "중형", "name" : "싼타페"},
        { "type" : "경형", "name" : "캐스퍼"},
        { "type" : "중형", "name" : "그랜저"},
        { "type" : "준중형", "name" : "아반떼"}
    ]
}

print(type(vData), vData)

print("----------")

vStr = json.dumps(vData);
print(type(vStr), vStr)

print("----------")

vJson = json.loads(vStr);
print(type(vJson), vJson)

print("----------")

파이썬으로 만들어진 json 객체는 json 문자열로 변환을 할 수 있다.

반면에 json 문자열은 json 객체로 변환이 가능하다.

이것을 할 수 있게 만들어 주는 것이 json.dumps() 메서드와 json.loads() 메서드이다.

결과 화면을 보자.

반응형

댓글