:CATEGORIES: python
```
pprintの基本的な使い方
出力幅(文字数)を指定: 引数width
出力する要素の深さを指定: 引数depth
インデント幅を指定: 引数indent
改行を最小限にする: 引数compact
文字列に変換: pprint.pformat()
例: 二次元配列(リストのリスト)を整形して表示
[source:] Pythonのpprintの使い方(リストや辞書を整形して出力) | note.nkmk.me https://note.nkmk.me/python-pprint-pretty-print/
```
```
In [59]: l = [{'Name': 'Alice XXX', 'Age': 40, 'Points': [80, 20]},
...: {'Name': 'Bob YYY', 'Age': 20, 'Points': [90, 10]},
...: {'Name': 'Charlie ZZZ', 'Age': 30, 'Points': [70, 30]}]
In [60]: print(l)
[{'Name': 'Alice XXX', 'Age': 40, 'Points': [80, 20]}, {'Name': 'Bob YYY', 'Age': 20, 'Points': [90, 10]}, {'Name': 'Charlie ZZZ', 'Age': 30, 'Points': [70, 30]}]
In [61]: pprint.pprint(l)
[{'Age': 40, 'Name': 'Alice XXX', 'Points': [80, 20]},
{'Age': 20, 'Name': 'Bob YYY', 'Points': [90, 10]},
{'Age': 30, 'Name': 'Charlie ZZZ', 'Points': [70, 30]}]
In [62]: pprint.pprint(l, width=40)
[{'Age': 40,
'Name': 'Alice XXX',
'Points': [80, 20]},
{'Age': 20,
'Name': 'Bob YYY',
'Points': [90, 10]},
{'Age': 30,
'Name': 'Charlie ZZZ',
'Points': [70, 30]}]
In [63]: pprint.pprint(l, width=400)
[{'Age': 40, 'Name': 'Alice XXX', 'Points': [80, 20]}, {'Age': 20, 'Name': 'Bob YYY', 'Points': [90, 10]}, {'Age': 30, 'Name': 'Charlie ZZZ', 'Points': [70, 30]}]
In [64]: pprint.pprint(l, depth=1)
[{...}, {...}, {...}]
In [65]: pprint.pprint(l, depth=2)
[{'Age': 40, 'Name': 'Alice XXX', 'Points': [...]},
{'Age': 20, 'Name': 'Bob YYY', 'Points': [...]},
{'Age': 30, 'Name': 'Charlie ZZZ', 'Points': [...]}]
In [66]: pprint.pprint(l, indent=4)
[ {'Age': 40, 'Name': 'Alice XXX', 'Points': [80, 20]},
{'Age': 20, 'Name': 'Bob YYY', 'Points': [90, 10]},
{'Age': 30, 'Name': 'Charlie ZZZ', 'Points': [70, 30]}]
In [67]: pprint.pprint(l, indent=12)
[ {'Age': 40, 'Name': 'Alice XXX', 'Points': [80, 20]},
{'Age': 20, 'Name': 'Bob YYY', 'Points': [90, 10]},
{'Age': 30, 'Name': 'Charlie ZZZ', 'Points': [70, 30]}]
In [68]: s_pp = pprint.pformat(l)
...: print(s_pp)
[{'Age': 40, 'Name': 'Alice XXX', 'Points': [80, 20]},
{'Age': 20, 'Name': 'Bob YYY', 'Points': [90, 10]},
{'Age': 30, 'Name': 'Charlie ZZZ', 'Points': [70, 30]}]
In [69]: print(type(s_pp))
```
0 件のコメント:
コメントを投稿