-
[Python] JSON 데이터 손쉽게 다루기코딩/파이썬 2023. 7. 30. 11:20반응형
JSON은 많은 웹 및 모바일 어플리케이션에서 사용되는 가벼운 데이터 형식입니다. 이번 포스팅에서는 JSON이 무엇인지 그리고 Python에서 어떻게 JSON 데이터를 다루는지에 대해 알아보겠습니다.
Json 데이터 다루기
JSON 이란?
JSON은 JavaScript Object Notation의 약자로, 데이터를 교환하는 하나의 형식입니다. 이는 속성과 값의 쌍(attribue-value pairs)으로 이루어진 텍스트 형식이며 사람이 읽을 수 있을 뿐만 아니라, 기계에 의해 쉽게 생성 및 분석될 수 있습니다. JSON은 두 개체 간에 데이터를 전송하는 데 사용되며, 특히 서버와 웹 애플리케이션 간에 데이터를 전송할 때 많이 사용됩니다.
JSON은 기본적으로 이름과 값의 쌍을 사용하며, 이들은 쉼표로 구분되고 중괄호({})로 묶입니다. 여기에는 배열을 사용할 수도 있으며, 이는 대괄호([])로 표시됩니다.
JSON의 예시는 다음과 같습니다:# Json 파일 형식 { "이름": "홍길동", "나이": 30, "취미": ["독서", "영화감상", "여행"] }
형식을 보시면 Python의 dictionary와 형식이 거의 유사합니다. 실제로 아래 설명드릴 json 패키지를 이용하면, 위와 같은 json 파일을 딕셔너리로 읽어서 다룰 수 있습니다.
JSON 에 대한 좀 더 자세한 정보와 역사는 아래 위키 페이지를 참고하세요.
https://ko.wikipedia.org/wiki/JSON
JSON - 위키백과, 우리 모두의 백과사전
위키백과, 우리 모두의 백과사전. JSON(제이슨[1], JavaScript Object Notation)은 속성-값 쌍(attribute–value pairs), 배열 자료형(array data types) 또는 기타 모든 시리얼화 가능한 값(serializable value) 또는 키-값
ko.wikipedia.org
Python에서 Json을 다루는 방법
Python은 기본적으로 JSON 데이터를 다룰 수 있는 라이브러리를 제공합니다. json 라이브러리는 JSON 데이터를 파이썬 데이터 구조로 변환하거나 그 반대 작업을 수행할 수 있습니다.
다음은 Python에서 json 라이브러리를 사용하는 기본적인 방법입니다:
json 데이터를 읽기 : json.loads()
json.loads() 함수로 JSON 문자열을 Python 딕셔너리 객체로 변환합니다.
import json person_json = '{"name": "John", "age": 30, "city": "New York"}' person = json.loads(person_json) print(type(person)) print(person) print('name:' , person['name']) print('age:' , person['age'])
json.loads로 json 형식의 문자열을 읽으면 python dictionary로 다룰 수 있습니다.
json 형식의 데이터 쓰기 : json.dumps()
json.dumps() 함수는 Python 객체를 JSON 문자열로 변환합니다.
import json # python dict 생성 person = { "name": "John", "age": 30, "city": "New York" } # dict 을 json 문자열로 변환 person_json = json.dumps(person) print(person_json)
아래는 실행 결과입니다.
JSON 형식을 다루는 파이썬 라이브러리인 json에 대해 좀 더 자세히 알아보시려면, 아래 링크로 참고하십시요
https://docs.python.org/ko/3/library/json.html
json — JSON encoder and decoder
Source code: Lib/json/__init__.py JSON (JavaScript Object Notation), specified by RFC 7159(which obsoletes RFC 4627) and by ECMA-404, is a lightweight data interchange format inspired by JavaScript...
docs.python.org
주요 사용 사례
JSON 데이터를 Python에서 어떻게 활용할 수 있는지에 대해 실제 사례를 통해 알아보겠습니다. API에서 데이터를 받아와 사용하는 경우가 대표적인 JSON 사용 예입니다. requests 라이브러리를 사용하여 API를 호출하고 결과를 JSON으로 받아올 수 있습니다.
import requests import json response = requests.get('https://api.github.com') data = json.loads(response.text) print(data)
보통 API 응답이 json으로 구성된 경우가 많아서, respones.text의 응답 문자열을 python dict으로 변환해주는 코드입니다.
아래 실행 결과를 보면, github.com의 api 목록을 받아온 것을 확인할 수 있습니다.
마무리
이상 python json 에 대한 포스팅이었습니다.
https://smart-worker.tistory.com/48
[Python] 초보자를 위한 데코레이터(Decorator) 사용법
Decorator가 뭐지? 장식인가. 몇몇은 함수 위에 '@' 로 시작하는 이상한 문법을 본적이 있을 것입니다. 이것이 바로 decorator라는 python 문법인데요. 초보자에게는 다소 어려울 수 있지만, 한 번만 이해
smart-worker.tistory.com
https://smart-worker.tistory.com/52
[Python] 텍스트 파일 읽고 쓰기(open, readlines 등)
파이썬을 사용하다보면 텍스트 파일을 읽고 저장해야할 때가 많습니다. Python은 텍스트 파일을 다루는 방법이 매우 직관적이며, 유연성이 있습니다. 본 포스트에서는 Python에서 파일을 다루는 방
smart-worker.tistory.com
https://smart-worker.tistory.com/50
[Python]람다(lambda) 함수 이해하기
이 글에서는 Python 프로그래밍 언어에서 사용되는 람다(lambda) 함수에 대해 배울 것입니다. 초보자 분들도 쉽게 이해할 수 있도록 기본적인 개념부터 실제 사용 사례까지 자세히 설명하겠습니다.
smart-worker.tistory.com
반응형'코딩 > 파이썬' 카테고리의 다른 글
[Python] 문자열 서식 지정, 포매팅 방식 및 format 함수 (0) 2023.07.30 Python의 예외 처리 방법: try, except, finally 이해하기 (0) 2023.07.30 [Python] 텍스트 파일 읽고 쓰기(open, readlines 등) (0) 2023.07.30 [Python] GIL(Global interpreter Lock) 이해하기 (0) 2023.07.29 [Python]람다(lambda) 함수 이해하기 (0) 2023.07.29