본문 바로가기
카테고리 없음

[TIL]Python Json 파일, 문자열 load, loads, dump, dumps 정리

by Byeong 2024. 3. 2.

JSON은 Javascript Object Notation의 약자로 데이터를 쉽게 교환하고 저장하기 위해 사용된다.

json은 python에서 딕셔너리(dictionary)와 매우 유사하다. 그래서 json파일을 python에서 사용이 가능하다.

 

import json
import requests

 

import를 통해 json모듈을 사용하고 requests를 통해 데이터를 가져옵니다.

 

url = "https://jsonplaceholder.typicode.com/"

r = requests.get(f"{url}users/1")
print(type(r.text))  # <class 'str'>

 

url을 불러 내용을 확인해 보면 string(문자열)로 나옵니다.

 

json.loads

 

하지만 json.loads을 사용한다면

response_content = json.loads(r.text)
print(type(response_content))  # <class 'dict'>

 

json 파일을 dictionary 형태로 받아서 

<class 'dict'>
{'address': {'city': 'Gwenborough',
             'geo': {'lat': '-37.3159', 'lng': '81.1496'},
             'street': 'Kulas Light',
             'suite': 'Apt. 556',
             'zipcode': '92998-3874'},
 'company': {'bs': 'harness real-time e-markets',
             'catchPhrase': 'Multi-layered client-server neural-net',
             'name': 'Romaguera-Crona'},
 'email': 'Sincere@april.biz',
 'id': 1,
 'name': 'Leanne Graham',
 'phone': '1-770-736-8031 x56442',
 'username': 'Bret',
 'website': 'hildegard.org'}

 

이런 식으로 출력됩니다.

 

 

json.dumps

 python 객체를 json 문자열로 변환하여 보내는 방법입니다.

 

json_string = json.dumps(json_object)

이런 식으로 json_object를 json 문자열 방식으로 보내는 방법입니다.

 

 

json.load , json.dump

loads와 dumps는 json 형태의 문자열로 보내거나 받는 방식이지만 

load와 dump는 json 파일을 보내거나 받는 방식입니다.

json 문자열에서 정보를 가져오는 것이 아닌 json파일에서 가져오려면 load와 dump를 이용해야 합니다.

 

 

마무리 

파이썬 심화 강의를 다 듣고 chat GPT 강의를 듣기 시작했다. 그런데 5주짜리 강의라 10시간 정도 시간이 소유될 거 같다.

4번 과제를 풀기 위해서는 필요한 부분인데 내일까지 최대한 많이 듣고 내용을 정리해 나가야겠다. 과제를 진행하며 나오는 오류를 풀어나가는 부분도 재미있지만 강의를 들으며 그 내용을 직접 실천해 보니 이해도도 많이 올라간다.

 하지만 정보를 찾아보고 하는데 다소 시간이 걸리지만 이것도 하나의 경험이니 차근차근 쌓아나가야겠다.