JSON 저장/읽기
안녕하세요.
이번 시간에는 파이썬으로 JSON 데이터를 저장하고 읽는 방법을 배워보겠습니다.
JSON은 데이터를 저장할 때 많이 사용하는 파일 형식입니다.
쉽게 말하면 이름표가 붙어 있는 상자처럼 데이터를 정리해서 저장하는 방법입니다.
예를 들어 학생 정보를 저장한다면 이렇게 생각할 수 있습니다.
{
"name": "철수",
"age": 13,
"hobby": "축구"
}
여기서 name, age, hobby는 데이터의 이름표입니다.
1. JSON이란?
JSON은 데이터를 저장하거나 주고받을 때 사용하는 형식입니다.
파이썬의 딕셔너리와 모양이 비슷합니다.
student = {
"name": "철수",
"age": 13,
"hobby": "축구"
}
이런 데이터를 파일로 저장하면 나중에 다시 불러와서 사용할 수 있습니다.
2. 이번 프로그램에서 만들 기능
이번 프로그램은 다음 기능을 만듭니다.
- 학생 정보 입력하기
- JSON 파일로 저장하기
- JSON 파일 읽기
- 저장된 학생 정보 출력하기
3. 전체 프로그램 코드
import json
# 학생 정보를 저장할 딕셔너리 만들기
student = {}
# 사용자에게 학생 정보 입력받기
student["name"] = input("이름을 입력하세요: ")
student["age"] = int(input("나이를 입력하세요: "))
student["hobby"] = input("취미를 입력하세요: ")
# JSON 파일로 저장하기
with open("student.json", "w", encoding="utf-8") as file:
json.dump(student, file, ensure_ascii=False, indent=4)
print("학생 정보가 student.json 파일에 저장되었습니다.")
# JSON 파일 읽기
with open("student.json", "r", encoding="utf-8") as file:
loaded_student = json.load(file)
# 읽어온 데이터 출력하기
print("\n저장된 학생 정보")
print("이름:", loaded_student["name"])
print("나이:", loaded_student["age"])
print("취미:", loaded_student["hobby"])
4. 실행 예시
이름을 입력하세요: 철수
나이를 입력하세요: 13
취미를 입력하세요: 축구
학생 정보가 student.json 파일에 저장되었습니다.
저장된 학생 정보
이름: 철수
나이: 13
취미: 축구
5. 코드 쉽게 설명하기
import json
JSON을 사용하기 위해 json 모듈을 불러옵니다.
모듈은 쉽게 말해 파이썬 도구 상자입니다.
student = {}
학생 정보를 저장할 빈 딕셔너리를 만듭니다.
딕셔너리는 이름표와 값을 함께 저장하는 상자입니다.
student["name"] = input("이름을 입력하세요: ")
student["age"] = int(input("나이를 입력하세요: "))
student["hobby"] = input("취미를 입력하세요: ")
사용자가 입력한 이름, 나이, 취미를 딕셔너리에 저장합니다.
예를 들어 철수를 입력하면 이렇게 저장됩니다.
{
"name": "철수",
"age": 13,
"hobby": "축구"
}
with open("student.json", "w", encoding="utf-8") as file:
student.json 파일을 쓰기 모드로 엽니다.
여기서 "w"는 write의 뜻으로, 파일에 내용을 저장할 때 사용합니다.
json.dump(student, file, ensure_ascii=False, indent=4)
학생 정보를 JSON 파일에 저장합니다.
ensure_ascii=False는 한글이 깨지지 않게 해줍니다.
indent=4는 파일 내용을 보기 좋게 정리해 줍니다.
with open("student.json", "r", encoding="utf-8") as file:
이번에는 저장된 JSON 파일을 읽기 모드로 엽니다.
"r"은 read의 뜻으로, 파일을 읽을 때 사용합니다.
loaded_student = json.load(file)
JSON 파일 안에 저장된 내용을 다시 파이썬 데이터로 불러옵니다.
print("이름:", loaded_student["name"])
print("나이:", loaded_student["age"])
print("취미:", loaded_student["hobby"])
불러온 학생 정보를 화면에 출력합니다.
6. student.json 파일에는 어떻게 저장될까?
프로그램을 실행하면 student.json 파일이 만들어집니다.
파일 안에는 다음처럼 저장됩니다.
{
"name": "철수",
"age": 13,
"hobby": "축구"
}
사람이 보기에도 쉽고, 컴퓨터가 읽기에도 좋은 모양입니다.
7. JSON을 사용하는 이유
JSON은 여러 곳에서 많이 사용됩니다.
예를 들어 다음과 같은 곳에서 사용됩니다.
- 학생 정보 저장
- 회원 정보 저장
- 게임 점수 저장
- 설정 파일 저장
- 웹사이트 데이터 저장
그래서 JSON을 배우면 파일 저장 프로그램을 만들 때 아주 유용합니다.
8. 정리
이번 시간에는 파이썬으로 JSON 데이터를 저장하고 읽는 방법을 배웠습니다.
핵심은 다음과 같습니다.
json.dump()
데이터를 JSON 파일로 저장할 때 사용합니다.
json.load()
JSON 파일을 다시 읽어올 때 사용합니다.
JSON은 데이터를 깔끔하게 저장할 수 있기 때문에 파이썬 프로그램에서 자주 사용됩니다.
9. 연습 문제
문제 1
동물 정보를 JSON 파일로 저장해 보세요.
저장할 정보는 다음과 같습니다.
동물 이름: 강아지
나이: 3
좋아하는 음식: 고기
문제 2
책 정보를 JSON 파일로 저장하고 다시 읽어 보세요.
저장할 정보는 다음과 같습니다.
책 제목: 파이썬 기초
가격: 15000
출판사: 코딩출판사
JSON 데이터 관리 프로그램

'강의 > Python 기초' 카테고리의 다른 글
| Chapter 16. JSON ↔ CSV 변환기 (0) | 2026.06.11 |
|---|---|
| Chapter 15. CSV 성적 관리 프로그램 (0) | 2026.06.11 |
| Chapter 13. 파일 이름 일괄 변경기 (0) | 2026.06.11 |
| Chapter 12. 파일 검색 프로그램 (0) | 2026.06.11 |
| Chapter 11. 메모장 저장 프로그램 (TXT 파일 저장) (0) | 2026.06.11 |