JSON(JavaScript Object Notation)
- 경량 DATA 교환 형식
- 사람이 읽고 쓰기에 용이하며, 기계가 분석/ 생성하기에 용이
Q. 왜 배울까?
서버로부터 데이터를 응답 받을 때, JSON 데이터로 받음
JSON 특징과 장점
- 텍스트 기반의 가벼운 데이터 형식
- 계층적 구조 표현이 가능
- Python, C-family, Java, JavaScript등 대부분의 프로그래밍 언어에서 사용하는 데이터 형식
- 데이터 분석, 웹 개발, 소프트웨어 엔지니어링 등 다양한 분야에서 데이터 교환에 사용
작성시 주의사항 !
- 키(key)는 쌍따옴표(" ")로 감싸기
- 문자열은 쌍따옴표(" ")로 감싸기
- 숫자, Boolean, null은 따옴표 X
- 작은 따옴표(' ') 사용 X
- 주석 사용 X
- 마지막 항목 뒤에 콤마(,) 사용 X
- 들여쓰기는 가독성을 위한 선택사항
JSON 기본 문법
JSON의 최상위 구조
JSON 데이터는 다음의 두 가지 형태 중 하나로 나타낸다.
- 객체(Object): 중괄호 { } 사용 (↔ 파이썬: 딕셔너리)
- 배열(Array): 대괄호 [ ] 사용 (↔ 파이썬: 리스트)
1. 객체(Object)의 구조와 표현
{
"key1": value1,
"key2": value2,
"key3": value3
}
- 중괄호({ }) 안에 구조가 담긴다.
- 가장 기본적인 구조는 key-value 쌍
- Key: 반드시 문자열이어야 하며, 큰 따옴표(" ")로 감싸야 함
- Key는 한 객체 내에서 중복될 수 없음
- Value: 다양한 데이터 타입이 올 수 있음
2. 배열(Array)의 구조와 표현
[
value1,
"value2",
"value3",
value4
]
- 대괄호([ ])안에 구조가 담긴다.
- 값(value)들의 목록
- 다양한 타입의 값을 섞어서 사용 가능
JSON 값(Value) 데이터 타입
- 문자열(String)
- 숫자(Number)
- 불리언(Boolean)
- null
- 객체(Object): { }
- 배열(Array): [ ]
과제 - 아래 결과와 같은 JSON 만들기
[도전1]
{
"group": "BTS",
"name": [
"aaa",
"bbb",
"ccc",
"ddd"
],
"age": [
35,
"Unknown",
56,
55
]
}
[도전2]
{
"love": [
"chayoon",
"jihyo",
[
"computer",
"notebook",
"mouse"
]
],
"dislike": [
"hungry",
777
]
}
[도전3]
[
[
1,
2,
3
],
[
3,
4,
5
],
{
"A": 3,
"B": 6,
"OK": false
},
true
]
'IVS > Python 프로그래밍' 카테고리의 다른 글
[Python] Class, 상속, 오버라이딩 (1) | 2024.12.20 |
---|---|
[JSON] Project1- 파이썬을 활용한 API 데이터 수집 (1) | 2024.12.18 |
[JSON] Encoding/ Decoding, JSON 파일 파싱하기 (0) | 2024.12.18 |
[Python] 리스트, 함수, 딕셔너리, 튜플 (0) | 2024.12.17 |
[Python] 변수, 입출력, 데이터 타입, 아스키코드 (1) | 2024.12.16 |