Python中的pprint

http://www.crifan.com/python_module_pprint/

背景

看到这里提到了pprint。

打算去试试.

pprint简介

找到在线官网解释:

pprint — Data pretty printer

就是一个,方便大家打印一些,相对复杂的变量的好东西。

使用pprint

去写点代码试试。

 

代码:

#-------------------------------------------------------------------------------
# Name:        【记录】折腾Python中的pprint
# Purpose:      http://www.crifan.com/python_module_pprint
# Author:      Crifan Li
#
# Created:     06/01/2013
# Copyright:   (c) Crifan Li 2013
# Licence:     www.crifan.com
#-------------------------------------------------------------------------------
 
import pprint;
import re;
 
def pprintDemo():
    varsList = [
        [1, 2, 3],
        ["ab", "c", "def"],
        re.compile("\w+"),
        ("123", "abc"),
        {
            "key1":"value1",
            "key2":"value2",
        },
    ];
 
    for value in varsList:
        print value;
 
    print "-"*80;
 
    pp = pprint.PrettyPrinter(indent=4);
    for value in varsList:
        pp.pprint(value);
 
    print "="*80;
    stuff = ['spam', 'eggs', 'lumberjack', 'knights', 'ni'];
    stuff.insert(0, stuff[:]);
    print stuff;
    print "-"*80;
    pp.pprint(stuff)
 
if __name__ == '__main__':
    pprintDemo();
效果:

[1, 2, 3]
['ab', 'c', 'def']
<_sre.SRE_Pattern object at 0x00000000030DD378>
('123', 'abc')
{'key2': 'value2', 'key1': 'value1'}
--------------------------------------------------------------------------------
[1, 2, 3]
['ab', 'c', 'def']
<_sre.SRE_Pattern object at 0x00000000030DD378>
('123', 'abc')
{   'key1': 'value1', 'key2': 'value2'}
================================================================================
[['spam', 'eggs', 'lumberjack', 'knights', 'ni'], 'spam', 'eggs', 'lumberjack', 'knights', 'ni']
--------------------------------------------------------------------------------
[   ['spam', 'eggs', 'lumberjack', 'knights', 'ni'],
    'spam',
    'eggs',
    'lumberjack',
    'knights',
    'ni']

总结

pprint,有点意思。

以后可以用在代码调试过程中。


你可能感兴趣的:(Python中的pprint)