pprint用法

pprint模块 提供了打印出任何python数据结构类和方法。

模块方法:

class pprint.PrettyPrinter(indent=1,width=80,depth=None, stream=None)  

   创建一个PrettyPrinter对象

    indent --- 缩进,width --- 一行最大宽度,

    depth --- 打印的深度,这个主要是针对一些可递归的对象,如果超出指定depth,其余的用"..."代替。

                 eg: a=[1,2,[3,4,],5]  a的深度就是2; b=[1,2,[3,4,[5,6]],7,8] b的深度就是3

    stream ---指输出流对象,如果stream=None,那么输出流对象默认是sys.stdout

 

pprint.pformat(object,indent=1,width=80, depth=None) 

   返回格式化的对象字符串

 

pprint.pprint(object,stream=None,indent=1, width=80, depth=None) 

  输出格式的对象字符串到指定的stream,最后以换行符结束。

 

pprint.isreadable(object) 

   判断对象object的字符串对象是否可读

 

pprint.isrecursive(object) 

   判断对象是否需要递归的表示

   eg: pprint.isrecursive(a)  --->False

        pprint.isrecursive([1,2,3])-->True

 

pprint.saferepr(object) 

   返回一个对象字符串,对象中的子对象如果是可递归的,都被替换成<Recursionontypename withid=number>.这种形式。

 

PrettyPrinter 对象具有的方法与上面类似,不在赘述。

import pprint

data = (
"this is a string", [1, 2, 3, 4], ("more tuples",
1.0, 2.3, 4.5), "this is yet another string"
)

pprint.pprint(data)

输出:

('this is a string',
[1, 2, 3, 4],
('more tuples', 1.0, 2.3, 4.5),
'this is yet another string')

 

posted @ 2018-11-09 11:37  排骨南  阅读(574)  评论(0编辑  收藏  举报