| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
- Unreal Engine 5
- Tutorial
- 시작해요 언리얼 2022
- dynamic
- guide
- UE5
- Basic
- 기초
- 파이썬
- Class
- 오류
- c++
- Algorithm
- Material
- 프로그래밍
- 재귀
- C#
- W3Schools
- String
- DP
- parameter
- dfs
- python
- Unity
- Programming
- 백준
- loop
- 문제풀이
- w3school
- github
- Today
- Total
행복한 개구리
Python 공부내용 21.10.27. Python - JSON 본문
W3Schools의 Python Tutorial을 보며 해석하고 정리한 글입니다.
오역이 존재할 수 있습니다
저도 파이썬은 처음이니 가볍게 봐주세요 :D
파이썬 JSON
JSON은 데이터를 저장하고 변환하는 문법입니다.
JSON은 텍스트이며, JavaScript 객체표기법에 따라 작성됩니다.
파이썬에서의 JSON
파이썬은 json 이라고 불리는 빌트인 패키지를 갖고있으며 이것은 JSON데이터로 작업을 할 때 사용됩니다.
import json
JSON파싱 - JSON에서 Python으로 변환하기
만약 당신이 JSON형식의 문자열을 가지고있따면, 당신은 json.loads() 메서드를 통해서 파싱할 수 있습니다.
참고 : 결괏값은 Python의 딕셔너리 형식으로 반환됩니다.
import json
# some JSON:
# JSON 객체
x = '{ "name":"John", "age":30, "city":"New York"}'
# parse x:
# x 파싱하기
y = json.loads(x)
print(y)
# the result is a Python dictionary
# 결괏값은 파이썬 딕셔너리 형태
print(y["age"])

파이썬에서 JSON으로 변환하기
당신이 파이썬 오브젝트를 JSON형식으로 변환하고 싶다면 json.dumps() 메서드를 사용하면 됩니다.
import json
# a Python object(dict):
# 파이썬 객체(딕셔너리 형식)
x = {
"name" : "John",
"age" : 30,
"city" : "New York"
}
# convert into JSON:
# JSON으로 변환
y = json.dumps(x)
# the result is a JSON string:
# JSON문자열로 나온 결괏값
print(y)

당신은 아래의 데이터 타입인 객체들을 JSON문자열로 변환할 수 있습니다.
- dict
- list
- tuple
- string
- int
- float
- True
- False
- None
import json
print(json.dumps({"name": "John", "age":30}))
print(json.dumps(["apple", "bananas"]))
print(json.dumps(("apple", "bananas")))
print(json.dumps("hello"))
print(json.dumps(42))
print(json.dumps(31.76))
print(json.dumps(True))
print(json.dumps(False))
print(json.dumps(None))

만약 당신이 Python에서 JSON으로 변환할 때 Python객체들은 JSON에서 다음의 형식을 갖게됩니다.

import json
x = {
"name": "John",
"age": 30,
"married": True,
"divorced": False,
"children": ("Ann","Billy"),
"pets": None,
"cars": [
{"model": "BMW 230", "mpg": 27.5},
{"model": "Ford Edge", "mpg": 24.1}
]
}
print(json.dumps(x))

결괏값 서식 만들기
위 예시에서는 JSON문자열을 출력했지만 줄바꿈과 들여쓰기 없이는 가독성이 떨어집니다.
json.dumps() 메서드는 결괏값의 가독성을 높여줄 수 있는 매개변수를 가집니다.
# indent 매개변수에서 indent의 개수를 정의하기
json.dumps(x, indent = 4)

당신은 따옴표도 정의할 수 있습니다. 기본값은 ", " 와 ": " 입니다. 반점 + 공백으로 각 객체들을 구분하고 콜론 + 공백으로 키와 밸류를 구분한다는 뜻입니다.
import json
x = {
"name": "John",
"age": 30,
"married": True,
"divorced": False,
"children": ("Ann","Billy"),
"pets": None,
"cars": [
{"model": "BMW 230", "mpg": 27.5},
{"model": "Ford Edge", "mpg": 24.1}
]
}
print(json.dumps(x, indent = 4, separators=(". ", " = ")))

결괏값 정렬하기
json.dumps() 메서드는 결괏값의 키들을 정렬하는 매개변수를 가집니다.
import json
x = {
"name": "John",
"age": 30,
"married": True,
"divorced": False,
"children": ("Ann","Billy"),
"pets": None,
"cars": [
{"model": "BMW 230", "mpg": 27.5},
{"model": "Ford Edge", "mpg": 24.1}
]
}
print(json.dumps(x, indent = 4, sort_keys=True))

'Python > 공부내용' 카테고리의 다른 글
| Python 공부내용 21.10.31. Python - PIP (0) | 2021.10.31 |
|---|---|
| Python 공부내용 21.10.29. Python - RegEx (0) | 2021.10.29 |
| Python 공부내용 21.10.26. Python - Math (0) | 2021.10.15 |
| Python 공부내용 21.10.15. Python - Date (0) | 2021.10.15 |
| Python 공부내용 21.10.13. Python - Modules (0) | 2021.10.13 |