Python - 딕셔너리 보기 좋게 출력 (pprint)

딕셔너리의 데이터를 보기 좋게 출력하는 방법에 대해서 알아보겠습니다. pretty print라고 하기도 합니다.

1. 딕셔너리를 보기 어렵게 출력하는 경우

딕셔너리를 단순히 print()로 출력하면, 한줄로 길게 출력되어 보기가 어렵습니다. 특히, 데이터가 많고 딕셔너리 안에 딕셔너리가 있다면 출력 결과는 더욱 보기 어렵습니다.

data = {'id': '1', 'title': 'foo', 'body': {'name': 'John Doe', 'age': '30'}, 'userId': '1'}
print(data)

Output:

{'id': '1', 'title': 'foo', 'body': {'name': 'John Doe', 'age': '30'}, 'userId': '1'}

2. pprint로 보기 좋게 출력

pprint()는 pretty print의 약자로, 딕셔너리를 인자로 전달하면 보기 좋게 데이터를 출력합니다.

from pprint import pprint

data = {'id': '1', 'title': 'foo', 'body': {'name': 'John Doe', 'age': '30'}, 'userId': '1'}
pprint(data)

Output:

{'body': {'age': '30', 'name': 'John Doe'},
 'id': '1',
 'title': 'foo',
 'userId': '1'}

들여쓰기

indent 값을 인자로 전달하면, 전달된 개수만큼 들여쓰기를 하면서 출력합니다.

from pprint import pprint

data = {'id': '1', 'title': 'foo', 'body': {'name': 'John Doe', 'age': '30'}, 'userId': '1'}
pprint(data, indent=4)

Output:

{   'body': {'age': '30', 'name': 'John Doe'},
    'id': '1',
    'title': 'foo',
    'userId': '1'}

너비(width)

출력되는 행의 길이(width)가 길다면, width를 인자로 전달하여 최대 너비를 제한할 수 있습니다.

아래 예제는 width가 100일 때 데이터를 출력하는 코드입니다.

from pprint import pprint

data = {'id': '1', 'title': 'foo', 'body': {'name': 'John Doe', 'age': '30', 'hobby': ['baseball', 'PC game']}, 'userId': '1'}
pprint(data, width=100)

Output:

{'body': {'age': '30', 'hobby': ['baseball', 'PC game'], 'name': 'John Doe'},
 'id': '1',
 'title': 'foo',
 'userId': '1'}

아래 예제는 width가 10일 때 데이터를 출력하는 코드입니다.

from pprint import pprint

data = {'id': '1', 'title': 'foo', 'body': {'name': 'John Doe', 'age': '30', 'hobby': ['baseball', 'PC game']}, 'userId': '1'}
pprint(data, width=10)

Output:

{'body': {'age': '30',
          'hobby': ['baseball',
                    'PC '
                    'game'],
          'name': 'John '
                  'Doe'},
 'id': '1',
 'title': 'foo',
 'userId': '1'}
Loading script...

Related Posts

codechachaCopyright ©2019 codechacha