Python에서 JSON(JSON(JavaScript Object Notation))은 데이터를 구조적으로 표현하기 위한 포맷으로, 웹 애플리케이션에서 자주 사용됩니다. Python에서 JSON을 처리하는 방법은 json 모듈을 사용하여 쉽게 다룰 수 있습니다. 이 모듈을 통해 JSON 데이터를 파싱하거나 직렬화(serialize)할 수 있습니다.
다음은 Python을 활용한 JSON 처리 방법 3가지와 예시입니다:
1. JSON 문자열을 Python 객체로 변환 (JSON 파싱)
json.loads() 함수를 사용하여 JSON 형식의 문자열을 Python 객체로 변환할 수 있습니다. 이 함수는 JSON 문자열을 파싱하여 Python의 데이터 타입(딕셔너리, 리스트 등)으로 변환합니다.
import json
# JSON 형식의 문자열
json_string = '{"name": "Alice", "age": 30, "city": "New York"}'
# JSON 문자열을 Python 객체로 변환
data = json.loads(json_string)
# 변환된 데이터 출력
print(data) # {'name': 'Alice', 'age': 30, 'city': 'New York'}
print(type(data)) # <class 'dict'>
2. Python 객체를 JSON 문자열로 변환 (직렬화)
json.dumps() 함수를 사용하여 Python 객체를 JSON 형식의 문자열로 변환할 수 있습니다. 이 함수는 Python 객체(예: 딕셔너리, 리스트 등)를 JSON 문자열로 직렬화합니다.
import json
# Python 객체 (딕셔너리)
data = {
"name": "Bob",
"age": 25,
"city": "San Francisco"
}
# Python 객체를 JSON 문자열로 변환
json_string = json.dumps(data, indent=4)
# JSON 문자열 출력
print(json_string)
# 출력
{
"name": "Bob",
"age": 25,
"city": "San Francisco"
}
indent 인자를 사용하여 출력 형식을 더 읽기 쉽게 할 수 있습니다.
3. JSON 파일 읽기 및 쓰기
Python에서 json.load()와 json.dump()를 사용하여 JSON 파일을 읽고 쓸 수 있습니다.
예시 1: JSON 파일 쓰기
import json
# Python 객체 (딕셔너리)
data = {
"name": "Charlie",
"age": 35,
"city": "Los Angeles"
}
# JSON 파일에 데이터 쓰기
with open('data.json', 'w') as file:
json.dump(data, file, indent=4)
예시 2: JSON 파일 읽기
import json
# JSON 파일에서 데이터 읽기
with open('data.json', 'r') as file:
data = json.load(file)
# 읽은 데이터 출력
print(data)
# 출력
{'name': 'Charlie', 'age': 35, 'city': 'Los Angeles'}
요약
- json.loads() : JSON 문자열을 Python 객체로 변환.
- json.dumps() : Python 객체를 JSON 문자열로 변환.
- json.load() : JSON 파일을 읽어 Python 객체로 변환.
- json.dump() : Python 객체를 JSON 파일에 저장.
이렇게 json 모듈을 사용하면 JSON 데이터를 쉽고 효율적으로 처리할 수 있습니다.
'프로그래밍 > [ Python ]' 카테고리의 다른 글
[Python] 예외처리 try, except (0) | 2024.11.14 |
---|---|
[Python] map (0) | 2024.11.13 |
[Python] List Comprehension (0) | 2024.11.12 |
[Python] Files (파일 관련) (1) | 2024.02.26 |
[python] pass, continue, break 활용법 (0) | 2021.06.20 |