source

python의 pretty-print json(비음파적 방법)

gigabyte 2023. 3. 5. 09:52
반응형

python의 pretty-print json(비음파적 방법)

알고 있습니다.pprintpython 표준 라이브러리는 매우 복잡한 python 데이터 유형을 위한 것입니다.하지만 항상 json 데이터를 검색하는데, json 데이터를 쉽고 빠르게 인쇄할 수 있는 방법이 없을까요?

예쁘게 인쇄되지 않음:

import requests
r = requests.get('http://server.com/api/2/....')
r.json()

예쁜 인쇄 기능:

>>> import requests
>>> from pprint import pprint
>>> r = requests.get('http://server.com/api/2/....')
>>> pprint(r.json())

Python의 내장 JSON 모듈이 이를 대신 처리할 수 있습니다.

>>> import json
>>> a = {'hello': 'world', 'a': [1, 2, 3, 4], 'foo': 'bar'}
>>> print(json.dumps(a, indent=2))
{
  "hello": "world",
  "a": [
    1,
    2,
    3,
    4
  ],
  "foo": "bar"
}
import requests
import json
r = requests.get('http://server.com/api/2/....')
pretty_json = json.loads(r.text)
print (json.dumps(pretty_json, indent=2))

요청에서 직접 json 출력을 얻기 위해 다음 코드를 사용했습니다. 결과를 가져오고 오브젝트 키를 들여쓰기 및 정렬하여 phythons json libary 함수 .dumps()의 도움을 받아 이 json 객체를 인쇄했습니다.

import requests
import json

response = requests.get('http://example.org')
print (json.dumps(response.json(), indent=4, sort_keys=True))

다음은 모든 답변과 반복하지 않는 유틸리티 기능의 조합입니다.

import requests
import json

def get_pretty_json_string(value_dict):
    return json.dumps(value_dict, indent=4, sort_keys=True, ensure_ascii=False)

# example of the use
response = requests.get('http://example.org/').json()
print (get_pretty_json_string (response))

show unicode 값과 키에 사용합니다.

print (json.dumps(pretty_json, indent=2, ensure_ascii=False))

#이 방법은 유효합니다.

import requests
import json

response = requests.get('http://server.com/api/2/....')
formatted_string = json.dumps(response.json(), indent=4)
print(formatted_string)

언급URL : https://stackoverflow.com/questions/23718896/pretty-print-json-in-python-pythonic-way

반응형