python pprint模块中print()和pprint()两者的区别

pprint的英文全称Data pretty printer,顾名思义就是让显示结果更漂亮。

print()和pprint()都是python的打印模块,功能基本一样,唯一的区别就是pprint()模块打印出来的数据结构更加完整,每行为一个数据结构,更加方便阅读打印输出结果。特别是对于特别长的数据打印,print()输出结果都在一行,不方便查看,而pprint()采用分行打印输出,所以对于数据结构比较复杂、数据长度较长的数据,适合采用pprint()打印方式。当然,一般情况多数采用print()。

代码示例:

import pprint
data=['generate_csv\\train_00.csv','generate_csv\\train_01.csv',
   'generate_csv\\train_02.csv', 'generate_csv\\train_03.csv',
   'generate_csv\\train_04.csv', 'generate_csv\\train_05.csv',
   'generate_csv\\train_06.csv', 'generate_csv\\train_07.csv',
   'generate_csv\\train_08.csv', 'generate_csv\\train_09.csv',
   'generate_csv\\train_10.csv', 'generate_csv\\train_11.csv']
print(data)
print("--------分界线--------------")
pprint.pprint(data)

代码运行结果:

本例使用了数据结构较为复杂的较长数据,可见pprint()输出的更加规范易读。

扩展阅读:

pprint模块还有其它的一些方法如下所示,详见官方文档

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)​​​​​​​
#判断对象是否需要递归的表示

pprint.saferepr(object) ​​​​​​​
#返回一个对象字符串,对象中的子对象如果是可递归的,都被替换成.这种形式

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Python中使用pprint函数进行格式化输出的教程

    pprint – 美观打印 作用:美观打印数据结构 pprint 包含一个"美观打印机",用于生成数据结构的一个美观视图.格式化工具会生成数据结构的一些表示,不仅可以由解释器正确地解析,而且便于人类阅读.输出尽可能放在一行上,分解为多行时则需要缩进. 以下实例用用到的data包含一下数据 data = [(1,{'a':'A','b':'B','c':'C','d':'D'}), (2,{'e':'E','f':'F','g':'G','h':'H', 'i':'I','j':'J',

  • python print 按逗号或空格分隔的方法

    1)按,分隔 a, b = 0, 1 while b < 1000: print(b, end=',') a, b = b, a+b 1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987, 2)按空格分隔 a, b = 0, 1 while b < 1000: print(b, end=' ') a, b = b, a+b 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 3)print的用法 print(..

  • 跟老齐学Python之print详解

    eval() 在print干事情之前,先看看这个东东.不是没有用,因为说不定某些时候要用到. 复制代码 代码如下: >>> help(eval)      #这个是一招鲜,凡是不理解怎么用,就用这个看文档 Help on built-in function eval in module __builtin__: eval(...)     eval(source[, globals[, locals]]) -> value Evaluate the source in the co

  • Python 3中print函数的使用方法总结

    前言 Python 思想:"一切都是对象!",最近发现python3和python2中print的用法有很多不同,python3中需要使用括号,缩进要使用4个空格(这不是必须的,但你最好这么做),缩进表示一个代码块的开始,非缩进表示一个代码的结束.没有明确的大括号.中括号.或者关键字.这意味着空白很重要,而且必须要是一致的.第一个没有缩进的行标记了代码块,意思是指函数,if 语句. for 循环. while 循环等等的结束.所以就想着给大家总结一下Python3中print函数用法的

  • python中使用print输出中文的方法

    看Python简明教程,学习使用print打印字符串,试了下打印中文,不行. 编辑环境:IDLE 上网搜了下解决办法,各种说法,试了两种: print u"学习" print (unicode("学习", encoding="utf-8")) 保存时均还是会提示 shell输出: ѧϰ ѧϰ 说明第二种还是有编码但还是不对. 最后,加上最前面一行就好了,虽然现在还不明白第一行为什么,不是说#是注释么... # encoding: utf-8

  • 对python中return和print的一些理解

    前言 最近刚开始学习python,之前只有一些c的基础,也忘得差不多了,现在想边学习边总结和分享收获~看书时看了return的用法,可是后来和print混了,老是感觉可以将函数return值直接显示,但不是这样的.下面就来和大家分析下对python中return和print的理解,话不多说了,来一起看看详细的介绍吧. 看到知道上的一个例子: 代码 (1) x = 1 y = 2 def add (x, y): z = x + y return z print (add(x,y)) 代码 (2)

  • Python中的pprint折腾记

    1.背景 看到这里提到了pprint.  打算去试试. 2.pprint简介 找到在线官网解释: pprint - Data pretty printer 就是一个,方便大家打印一些,相对复杂的变量的好东西. 3.使用pprint 去写点代码试试. 代码: 复制代码 代码如下: #------------------------------------------------------------------------------- # Name:        [记录]折腾Python中的

  • python 将print输出的内容保存到txt文件中

    具体代码如下所示: import sys import os class Logger(object): def __init__(self, filename="Default.log"): self.terminal = sys.stdout self.log = open(filename, "a") def write(self, message): self.terminal.write(message) self.log.write(message) d

  • Python的print用法示例

    Python 2.6中print不是函数,而是一个关键字,使用方式如下: 复制代码 代码如下: print 1, 2  print 'a', 'b' 显示结果如下,用逗号分隔的各项之间会打印出一个空格,默认以换行结束: 复制代码 代码如下: 1 2  a b 若不想以换行结束,则在最后加一个",",如下所示: 复制代码 代码如下: print 1, 2,  print 'a', 'b' 显示结果如下: 复制代码 代码如下: 1 2 a b Python 3.0中print变成了一个内置

  • Python3.2中Print函数用法实例详解

    本文实例讲述了Python3.2中Print函数用法.分享给大家供大家参考.具体分析如下: 1. 输出字符串 >>> strHello = 'Hello World' >>> print (strHello) Hello World 2. 格式化输出整数 支持参数格式化,与C语言的printf类似 >>> strHello = "the length of (%s) is %d" %('Hello World',len('Hello

  • python中print的不换行即时输出的快速解决方法

    关于Python2.x和3.x带来的print不换行的问题:昨天有发过推文,利用end = 定义,解决了横向的小问题,但是由于屏幕显示的问题,若字符串长度过大,则会引起不便.两个或多个print做分割的情况下,如何保持依然横向输出,一般的是在print尾部加上逗号(,)但是在3.x下,则不行,需要使用end = "(something)",some signs like , . ; 'also you can put a word or str in"". Exam

随机推荐