pprint的用法
Posted 炫云云
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pprint的用法相关的知识,希望对你有一定的参考价值。
pprint模块能以解释器可以解析的输入形式漂亮地打印python数据结构的形式
import pprint
stuff = ['spam', 'eggs', 'lumberjack', 'knights', 'ni']
stuff.insert(0, stuff[:])
#class pprint.PrettyPrinter(indent=1, width=80, depth=None, stream=None, *, compact=False)
pp = pprint.PrettyPrinter(indent=4)
pp.pprint(stuff)
'''
[ ['spam', 'eggs', 'lumberjack', 'knights', 'ni'],
'spam',
'eggs',
'lumberjack',
'knights',
'ni']
'''
width表示一行最多输出多少字符,compact=True表示在width范围允许内输出尽可能多,默认为False
pp = pprint.PrettyPrinter(width=41, compact=True)
pp.pprint(stuff)
'''
[['spam', 'eggs', 'lumberjack',
'knights', 'ni'],
'spam', 'eggs', 'lumberjack', 'knights',
'ni']
'''
pprint.pformat(object, indent=1, width=80, depth=None, *, compact=False)
与pp.pprint用法相同,只不过pprint是格式化后打印出来,而pformat是return格式化后的
pp = pprint.PrettyPrinter(width=41, compact=True)
p = pp.pformat(stuff)
print(p)
'''
[['spam', 'eggs', 'lumberjack',
'knights', 'ni'],
'spam', 'eggs', 'lumberjack', 'knights',
'ni']
'''
depth表示输出的深度
tup = ('spam', ('eggs', ('lumberjack', ('knights', ('ni', ('dead',
('parrot', ('fresh fruit',))))))))
pp = pprint.PrettyPrinter(depth=6)
pp.pprint(tup)
'''
('spam', ('eggs', ('lumberjack', ('knights', ('ni', ('dead', (...)))))))
'''
pprint.pprint(object, stream=None, indent=1, width=80, depth=None, *, compact=False)
stuff = ['spam', 'eggs', 'lumberjack', 'knights', 'ni']
stuff.insert(0, stuff)
pprint.pprint(stuff)
'''
[<Recursion on list with id=1866271590280>,
'spam',
'eggs',
'lumberjack',
'knights',
'ni']
'''
以上是关于pprint的用法的主要内容,如果未能解决你的问题,请参考以下文章