밤하늘공작소

Python에서 json 파일 읽기·쓰기 본문

코딩/Python

Python에서 json 파일 읽기·쓰기

밤하늘공작소 2022. 6. 13. 08:07

현재 같은 python 파일과 같은 위치에 이 코드 같이 생긴 "list.json"이 있다고 가정해보겠습니다. 

{
    "James": {
	"age": "21",
	"birth_day": "2000-10-23"
    },
    "Jennifer": {
    	"age": "19",
    	"birth_day": "2003-06-02"
    }
}

1. json 파일 읽기

여기서 이 파일을 불러오려면 python에서 이러한 코드를 작성하면 됩니다. 

import json

with open("list.json", "r") as json_file:
    data = json.load(json_file)
print(data)

이렇게 불러온 것을 출력하면, 이렇게 나온다. 

{'James': {'age': '21', 'birth_day': '2000-10-23'}, 'Jennifer': {'age': '19', 'birth_day': '2003-06-02'}}

 


 

대부분 python에서 json을 사용하는 이유는 데이터를 저장하기 위해서 입니다. 그런 이렇게 json 파일에 접근할 수 있어야 합니다. 그 방법은 이 코드를 사용하면 됩니다. 

import json

with open("list.json", "r") as json_file:
    data = json.load(json_file)

James_age = data["James"]["age"]
print(James_age)

여기의 접근법은 python의 OrderedDict와 같습니다. 코드는 data에서 James라는 데이터를 찾고 또 다시 json으로 구성된 age를 찾아서 그 데이터를 돌려주는 것입니다. 

 

반응형

 

2. json 파일 쓰기

이제 json을 작성하는 방법을 적어보겠습니다. 

import json

json_data = {
    "James": {
        "age": "21",
        "birthplace": "U.S.A.",
	"birth_day": "2000-10-23"
    },
    "Jennifer": {
    	"age": "19",
        "birthplace": "New Zealand",
    	"birth_day": "2003-06-02"
    }
}

with open("list.json", 'w', encoding='utf-8') as json_file:
    json.dump(json_data, json_file, indent="\t")

with open("list.json", "r") as json_file:
    data = json.load(json_file)
print(data)

이 코드는 원래 코드와 비슷하지만, 태어난 곳(birthplace)를 추가한 데이터입니다. 그리고 그 밑에 json을 쓰는 코드와 불러오는 코드가 있습니다. 그렇다면 순서상으로 json_data가 써진 이후에 불러와지기 때문에 json_data가 써진채로 출력되는 것을 알 수 있습니다. 

{'James': {'age': '21', 'birthplace': 'U.S.A.', 'birth_day': '2000-10-23'}, 'Jennifer': {'age': '19', 'birthplace': 'New Zealand', 'birth_day': '2003-06-02'}}
반응형

'코딩 > Python' 카테고리의 다른 글

Python에서 문자 자르기  (0) 2022.07.22
Python 리스트 활용 팁  (6) 2022.07.11
Python에서 포맷팅하기  (0) 2022.06.28
Python에서 문자를 숫자형으로 바꾸기  (0) 2022.06.20
Python 에서 사용자의 입력 받기  (2) 2022.06.17
Comments