ライブラリ: pprint

Pythonの「 pprint 」というライブラリについてご紹介します。

import pprint

pprint は、「 pretty-print 」の略で、 Python のオブジェクトを人が読みやすい形に整形して表示してくれるライブラリです。同名の「 pprint 」という関数がそのメインとなります。

とてもシンプルな関数ですが、コーディング途中に値を確認したいときなんかにとても便利です。

インストール

pprint は標準ライブラリに含まれているので、別途インストールする必要はありません。

以下いくつかサンプルを見ていきましょう。

リストの場合

import pprint

nums = ['one', 'two', 'three']
pprint.pprint(nums)
# 次のとおり表示
# ['one', 'two', 'three']

短いリストなんかは、そのまま print したのと同じ形で表示されます。

sentence = """
Python is a remarkably powerful dynamic programming language
"""
words = sentence.strip().split(' ')
pprint.pprint(words)
# 次のとおり表示
# ['Python',
#  'is',
#  'a',
#  'remarkably',
#  'powerful',
#  'dynamic',
#  'programming',
#  'language']

リストの要素数が多く、横に続けて表示するには長い場合なんかには、縦のラインを揃えて縦に表示してくれます。

辞書の場合

vegies = {'c': ['carrot', 'cucumber'],
          'l': 'lettuce',
          'p': ['potato', 'pepper'],
          't': 'tomato'}
pprint.pprint(vegies)
# 次のとおり表示
# {'c': ['carrot', 'cucumber'],
#  'l': 'lettuce',
#  'p': ['potato', 'pepper'],
#  't': 'tomato'}

辞書型の変数や、入れ子になったオブジェクトなんかも、きれいに整形して表示してくれます。

関数が含まれたリストの場合

import math
mathfuncs = [math.sin, math.cos, math.tan, math.exp]
pprint.pprint(mathfuncs)
# 次のとおり表示
# [<built-in function sin>,
#  <built-in function cos>,
#  <built-in function tan>,
#  <built-in function exp>]

その他クラス名の場合なんかにも、横に長くなるときには自動的に改行してきれいに表示してくれます。

以上です。

参考