본문 바로가기
코딩취미/Python

딕셔너리 값을 보기 좋게 출력하는 방법 (pprint, json)

by 브링블링 2024. 5. 27.
728x90

딕셔너리 값을 보기 좋게 출력하는 방법 (pprint, json)

딕셔너리를 보기 좋게 출력하는 것은 여러 가지 이유에서 중요합니다. 이러한 이유는 코드의 가독성 향상, 디버깅 효율성 증대, 데이터 검토 용이성, 그리고 협업의 편의성 등 다양한 측면에서 설명될 수 있습니다.  그리고 딕셔너리의 내용을 보기 좋게 출력하기 위해 여러 가지 방법을 사용할 수 있습니다. pprint 모듈을 사용하거나, JSON 형식으로 출력하는 방법이 대표적입니다.

딕셔너리의 값을 보기 좋게 출력해야 하는 이유

1. 코드 가독성 향상

보기 좋게 포맷된 딕셔너리는 데이터 구조를 한눈에 이해하기 쉽게 만들어 줍니다. 이는 코드 리뷰나 유지보수 과정에서 다른 사람들이 쉽게 이해할 수 있도록 도와줍니다.

# 일반 출력
{'name': 'John', 'age': 30, 'children': [{'name': 'Alice', 'age': 5}, {'name': 'Bob', 'age': 7}], 'address': {'street': '123 Main St', 'city': 'Anytown', 'state': 'CA', 'zipcode': '12345'}}

# 보기 좋게 출력
{
    'name': 'John',
    'age': 30,
    'children': [
        {'name': 'Alice', 'age': 5},
        {'name': 'Bob', 'age': 7}
    ],
    'address': {
        'street': '123 Main St',
        'city': 'Anytown',
        'state': 'CA',
        'zipcode': '12345'
    }
}

2. 디버깅 효율성 증대

코드에서 발생하는 오류를 찾기 위해서는 데이터 구조를 명확하게 이해하는 것이 중요합니다. 보기 좋게 포맷된 딕셔너리는 데이터의 구조와 값을 빠르게 파악할 수 있게 해주어 디버깅 과정에서 시간을 절약할 수 있습니다.

3. 데이터 검토 용이성

데이터 분석이나 처리 과정에서 딕셔너리의 내용을 검토하는 경우가 많습니다. 이때 데이터가 보기 좋게 포맷되어 있으면, 데이터를 쉽게 검토하고 분석할 수 있습니다.

4. 협업의 편의성

팀 작업이나 오픈 소스 프로젝트에서는 코드와 데이터의 가독성이 특히 중요합니다. 보기 좋게 출력된 딕셔너리는 팀원들이 데이터를 이해하고 작업하는 데 도움을 줍니다.

5. 문서화

프로젝트의 문서화 과정에서도 보기 좋은 데이터 출력을 제공하면, 다른 사람들이 프로젝트를 이해하는 데 큰 도움이 됩니다.

728x90

딕셔너리의 값을 보기 좋게 출력하는 대표적인 방법 2가지(pprint, json)

두 방법 모두 딕셔너리를 보기 좋게 출력할 수 있지만, 목적에 따라 선택할 수 있습니다.

  • pprint 모듈은 파이썬의 다양한 데이터 구조를 포맷팅해주므로, 복잡한 데이터 구조를 출력할 때 유용합니다.
  • json 모듈은 JSON 형식으로 데이터를 출력하기 때문에, JSON 형식으로 데이터를 처리하거나 저장할 때 유용합니다.

1. pprint 모듈 사용하기

pprint는 파이썬 표준 라이브러리에 포함된 모듈로, 복잡한 데이터 구조를 사람이 읽기 쉽게 출력해줍니다.

 

* 사용방법

import pprint

# 예시 딕셔너리
data = {
    'name': 'John',
    'age': 30,
    'children': [
        {'name': 'Alice', 'age': 5},
        {'name': 'Bob', 'age': 7}
    ],
    'address': {
        'street': '123 Main St',
        'city': 'Anytown',
        'state': 'CA',
        'zipcode': '12345'
    }
}

# pprint 사용
pprint.pprint(data)

2. json 모듈 사용하기

json 모듈의 dumps 함수를 사용하여 딕셔너리를 JSON 형식으로 출력할 수 있습니다. indent 인자를 사용하면 보기 좋게 들여쓰기된 형식으로 출력할 수 있습니다.

 

* 사용방법

import json

# 예시 딕셔너리
data = {
    'name': 'John',
    'age': 30,
    'children': [
        {'name': 'Alice', 'age': 5},
        {'name': 'Bob', 'age': 7}
    ],
    'address': {
        'street': '123 Main St',
        'city': 'Anytown',
        'state': 'CA',
        'zipcode': '12345'
    }
}

# json.dumps 사용
print(json.dumps(data, indent=4))


pprint 특징 및 사용방법

pprint는 파이썬 표준 라이브러리의 일부로서, 'pretty-printing'을 위해 제공되는 모듈입니다. 파이썬의 초창기부터 존재해왔으며,  pprint의 주요 목적은 데이터 구조를 사람이 읽기 쉬운 형식으로 출력하는 것입니다. 일반적인 print 함수는 복잡한 데이터 구조를 한 줄로 출력하기 때문에 가독성이 떨어질 수 있습니다. pprint는 이런 문제를 해결하기 위해 데이터를 여러 줄로 정리하고, 들여쓰기와 같은 포맷팅을 적용하여 가독성을 높입니다.

 

[ 특징 ]

  • 가독성: 복잡한 데이터 구조를 이해하기 쉽게 출력합니다.
  • 재귀적 구조: 중첩된 리스트나 딕셔너리 같은 재귀적 데이터 구조를 쉽게 읽을 수 있는 형식으로 출력합니다.
  • 맞춤형 포맷팅: 사용자가 원하는 포맷팅 스타일을 지정할 수 있습니다.

pprint 모듈을 사용하는 방법은 매우 간단합니다. pprint 모듈의 pprint 함수를 사용하여 데이터를 출력합니다.

 

[ 예제코드와 결과화면 ]

import pprint

# 복잡한 데이터 구조 예시
data = {
    'name': 'John',
    'age': 30,
    'children': [
        {'name': 'Alice', 'age': 5},
        {'name': 'Bob', 'age': 7}
    ],
    'address': {
        'street': '123 Main St',
        'city': 'Anytown',
        'state': 'CA',
        'zipcode': '12345'
    }
}

# 기본 print 함수 사용
print("Using print():")
print(data)

# pprint 모듈 사용
print("\nUsing pprint():")
pprint.pprint(data)

728x90