pprint库,漂亮打印,相比于print()直接打印在同一行,pprint能够将可迭代类型每一项都另起一行打印,起到美化的效果。
pprint库有两个常用函数pprint()和pformat(),前者是直接打印,后者返回一个字符串(同样是美化之后的,打印出来也是美化的)
pprint()
pprint(indent = 1,width = 80,depth = None,stream = None)
- indent 缩进
- width 宽度,默认是80
- depth 打印深度,就是打印深入到几层可迭代类型
- stream 指输出流对象,stream = None输出流对象默认是sys.stdout
分开实验这几个参数
indent
import pprint
str = {"name":["Alice","Bob","Cindy"],"year":12,"hobby":[({"eat":"no"}),"swimming"]}
pprint.pprint(str,indent = 2)
width
str = {"name":["Alice","Bob","Cindy"],"year":12,"hobby":[({"eat":"no"}),"swimming"]}
pprint.pprint(str,width =80)
{'hobby': [{'eat': 'no'}, 'swimming'],
'name': ['Alice', 'Bob', 'Cindy'],
'year': 12}
pprint.pprint(str,width = 30
{'hobby': [{'eat': 'no'},
'swimming'],
'name': ['Alice',
'Bob',
'Cindy'],
'year': 12}
depth
str是一个三层的可迭代对象
str = {"name":["Alice","Bob","Cindy"],"year":12,"hobby":[({"eat":"no"}),"swimming"]}
pprint.pprint(str,depth = 1)
只显示一层
#{'hobby': [...], 'name': [...], 'year': 12}
pprint.pprint(str,depth = 2)
显示两层
#{'hobby': [{...}, 'swimming'], 'name': ['Alice', 'Bob', 'Cindy'], 'year': 12}
pprint.pprint(str,depth = 3)
显示三层
{'hobby': [{'eat': 'no'}, 'swimming'],
'name': ['Alice', 'Bob', 'Cindy'],
'year': 12}
pfromat()
pformat(indent = 1,width = 80,depth = None,stream = None)
返回一个字符串