こんにちはフロントエンドエンジニアのまさにょんです!
今回は、Pythonのprint() と pprint() と display() の違いとは? 使い分け方についてまとめて解説します。
目次
Pythonのprint() と pprint() の違いとは?
Python のprint()
とpprint()
はどちらもPythonプリントモジュールです。
どちらもDataを標準出力する機能は基本的に同じですが、出力する際にフォーマットする機能に違いがあります。
print
は、改行などフォーマットせずに、Dataの内容をそのまま表示しますが、
同じくPythonの標準ライブラリであるpprint
モジュールを使うと、リスト(list型)や辞書(dict型)などのオブジェクトをきれいに整形して出力・表示することができます。
なので、複雑なデータ構造と長いデータ長を持つデータにはpprint()
が適しています。
ちなみに、pprint
は「pretty-print」の略です。
まとめると次のとおりです。
print()
: リストや辞書の要素が改行されることなく1行で出力されます。pprint()
: リストや辞書の要素が改行して、見やすく出力します。- pprintの頭文字のpは「pretty」のpです => pretty => 綺麗・整っている という意味合いがあります。
それでは、SampleCodeで出力の違いを確認してみます。
import pprint
robotamaList = [
{
'robotama': 'ロボ玉試作1号機',
'from': '神聖グンマー帝国',
'power': 1000,
'purupuruFlag': True
},
{
'robotama': "ロボ玉試作2号機",
'from': 'トチギー公国',
'power': 2000,
'purupuruFlag': True
},
{
'robotama': "ロボ玉試作3号機",
'from': 'さいたまー共和国',
'power': 3000,
'purupuruFlag': True
},
]
## 1. print ##
print(robotamaList)
## 出力結果 ##
# [{'robotama': 'ロボ玉試作1号機', 'from': '神聖グンマー帝国', 'power': 1000, 'purupuruFlag': True}, {'robotama': 'ロボ玉試作2号機', 'from': 'トチギー公国', 'power': 2000, 'purupuruFlag': True}, {'robotama': 'ロボ玉試作3号機', 'from': 'さいたまー共和国', 'power': 3000, 'purupuruFlag': True}]
## 2. pprint ##
pprint.pprint(robotamaList)
## 出力結果 ##
# [{'from': '神聖グンマー帝国',
# 'power': 1000,
# 'purupuruFlag': True,
# 'robotama': 'ロボ玉試作1号機'},
# {'from': 'トチギー公国',
# 'power': 2000,
# 'purupuruFlag': True,
# 'robotama': 'ロボ玉試作2号機'},
# {'from': 'さいたまー共和国',
# 'power': 3000,
# 'purupuruFlag': True,
# 'robotama': 'ロボ玉試作3号機'}]
番外編: ipython のdisplay() とは?
display()
は、dataframe形式の表のレイアウトを保持してくれます。
# Installコマンド: pip install ipython
from IPython.core.display import display
# Installコマンド: pip install pandas
import pandas as pd
df = pd.DataFrame(
[[2, 3, 4, 5], [1, 2, 3, 4]],
index=['sample1', 'sample2'],
columns=['propertyA', 'propertyB','propertyC','propertyD']
)
display(df)
Twitterやってます!Follow Me!
神聖グンマー帝国の逆襲🔥
神聖グンマー帝国の科学は、世界一ぃぃぃぃぃぃ!!!!!