Python

Python - JSON 활용

2020. 5. 29. 11:35

Python - JSON

JSON 이란?

공식사이트 : http://www.json.org/json-ko.html

JSON 이쁘게 보기 : http://bodurov.com/jsonformatter/

  • JSON: JavaScript Object Notation 약자(JavaScript 객체 표기법 구문에서 파생)

  • JSON 포맷은 더글라스 크록포드가 규정

  • JSON은 데이터를 저장하고 전송하는 형식입니다.

  • JSON은 종종 데이터가 서버에서 웹으로 전송될 때 사용되는 페이지

  • JSON은 경량 데이터 교환 형식

  • JSON은 완벽하게 언어로 부터 독립적(다양한 언어에서 사용)

  • 다양한 언어들에서, 이는 object, record, struct(구조체), dictionary, hash table, 키가 있는 list, 또는 연상배열(배열을 키로 참조)로서 실현

JSON Example

3명의 직원 객체를 정의예제

{
"employees":[
    {"firstName":"Joo", "lastName":"Duu"}, 
    {"firstName":"Koo", "lastName":"Kuu"},
    {"firstName":"Loo", "lastName":"Luu"}
]
}

JSON형식은 자바스크립트 객체 와 코드가 일치합니다.

따라서 JSON데이터를 자바 스크립트 객체로 쉽게 변환할 수 있음

 

JSON 문법 규칙

  • 데이터는 이름:값 의 쌍의 집합

  • 데이터는 , 로 구분

  • {} 안에 데이터가 쓰여지면 JSON 객체(object)

  • [] 안에 데이터가 쓰여지면 JSON 배열(array)

JSON 데이터- 이름(name)과 값(value)

name/value 쌍은 "name"(이중 따옴표) 와 : 뒤로 값이 따라온다.

"firstName":"Joo"

JSON은 name에 "" 필요하나 JavaScript 에서는 name "" 필요 없음

 

JSON 객체(JSON Objects)

{} 안에 데이터가 쓰여지면 JSON 객체 가 된다.

JavaScript 처럼 객체들(objects)은 여러개의 name/value 쌍을 가질 수 있다.

{"firstName":"Joo", "lastName":"Duu"}

JSON 배열(JSON Arrays)

[] 안에 데이터가 쓰여지면 JSON 배열이 된다.

JavaScript 처럼 배열(array )은 여러개의 객체(object)를 가질 수 있다.

"employees":[
    {"firstName":"Joo", "lastName":"Duu"}, 
    {"firstName":"Koo", "lastName":"Kuu"},
    {"firstName":"Loo", "lastName":"Luu"}
]

“employees” 객체는 배열로 각 배열의 값은 3개의 객체를 값으로 갖고 있다.

 

Pyhton JSON

json library 사용

json.dumps() : python data (dict) -> json data (str)

json.loads() : json data (str) -> python data (dict)

출처 : http://thecoding.kr/category/phython/python-json/