관리 메뉴

HAMA 블로그

Python 의 simplejson 사용하기 본문

Python

Python 의 simplejson 사용하기

[하마] 이승현 (wowlsh93@gmail.com) 2016. 10. 20. 21:31


Python 의 simplejson 사용하기


의존성 추가 

import simplejson


문자열로 JSON 형태 만들기 

szJson = '{' + '"callid":{}, "nodeid": {}, "content":"{}"'.format(1, 1, "hello") + '}'

이렇게 { "key" : "value"}  식으로 만들 수 있다.

출력해보면 아래와 같다.

print szJson  # {"callid":1,  "nodeid": 1,  "content":"hello world"}

print type(szJson)  # <type 'str'>


문자열 JSON 형태를 JSON Object (사전타입) 로 만들기  

jsonObj = simplejson.loads(szJson)


출력해보면 아래와 같다.  Dictionary (사전) 타입이 되었다. (순서 무시) 

{'content': 'hello world', 'callid': 1, 'nodeid': 1}

<type 'dict'>


사전 타입이기때문에 아래와 같이 사용 할 수 있다. 

print jsonObj["type"]

1 이 출력된다. 즉 문자열을 key/value 로 사용하기 쉽게 바꾸는것일 뿐이다. 


JSON Object (사전타입) 를 문자열 JSON 형태로 만들기  


packet = simplejson.JSONEncoder().encode(
{ "callid": 1,
"nodeid": 1,
"content": "hello world"
}
)

print packet
print type(packet)

아래와 같다.

packet = simplejson.JSONEncoder().encode(jsonObj)

출력해보면 아래와 같다.  다시 문자열이 되었다. 

{"content": "hi", "callid": 1, "nodeid": 1}

<type 'str'>


JSON Object (사전타입) 의 내용 바꾸기 

Dictionary (사전) 타입이기 때문에 그냥 아래와 같이 하면 된다.

jsonObj["content"] = "new hello world"


Comments