欢迎访问宙启技术站
智能推送

使用pprint模块来格式化Python输出结果的实用技巧

发布时间:2024-01-01 04:20:27

pprint(pretty print)模块是Python内置的标准库,它可以对Python的数据结构进行漂亮的打印输出,提供更好的可读性和可视化效果。

pprint模块提供了两个主要的方法:pprint和pformat。pprint方法直接将结果打印到控制台,而pformat方法返回一个格式化后的字符串。

下面是使用pprint模块的一些实用技巧和使用例子:

1. 格式化字典输出:

pprint模块对字典的输出结果进行了格式化,每个键值对都占据一行并且有缩进,更容易阅读。比如下面的例子:

import pprint

data = {'name': 'John', 'age': 30, 'city': 'New York'}
pprint.pprint(data)

输出结果:

{'age': 30,
 'city': 'New York',
 'name': 'John'}

2. 格式化列表输出:

pprint模块对列表的输出结果也进行了格式化,每个元素都占据一行并且以方括号包围。例如下面的例子:

import pprint

data = [1, 2, 3, 4, 5]
pprint.pprint(data)

输出结果:

[1,
 2,
 3,
 4,
 5]

3. 格式化嵌套结构输出:

pprint模块对于嵌套的数据结构,如字典嵌套列表或列表嵌套字典的情况,可以正确地缩进和格式化输出。例如:

import pprint

data = {'name': 'John', 'ages': [30, 40, 50]}
pprint.pprint(data)

输出结果:

{'ages': [30,
          40,
          50],
 'name': 'John'}

4. 控制输出缩进:

pprint模块的默认缩进为4个空格,但可以通过设置参数indent来更改缩进大小。例如:

import pprint

data = {'name': 'John', 'age': 30, 'city': 'New York'}
pprint.pprint(data, indent=2)

输出结果:

{
  'age': 30,
  'city': 'New York',
  'name': 'John'
}

5. 控制输出宽度:

pprint模块的默认宽度为80个字符,但可以通过设置参数width来更改宽度大小。例如:

import pprint

data = {'name': 'John', 'age': 30, 'city': 'New York'}
pprint.pprint(data, width=40)

输出结果:

{'age': 30,
 'city': 'New York',
 'name': 'John'}

6. 使用pformat方法来格式化输出为字符串:

pformat方法返回一个格式化后的字符串,而不是直接打印到控制台。这对于将格式化的输出保存到文件或通过网络传输非常有用。例如:

import pprint

data = {'name': 'John', 'age': 30, 'city': 'New York'}
formatted_data = pprint.pformat(data)
print(formatted_data)

输出结果:

{'age': 30, 'city': 'New York', 'name': 'John'}

这些是使用pprint模块的一些实用技巧和使用例子。pprint模块的主要优点是能够提供更好的可读性和可视化效果,尤其对于复杂的数据结构。它是一个非常有用的工具,特别是在调试和开发过程中。