在python的print()前面加个p让你的格式打印更容易

当你在 Python 中需要打印输出信息时,你可能会使用内置的 print() 函数。它是一个非常简单和常用的函数,能够将给定的参数打印到标准输出(通常是终端窗口)。然而,当你需要打印复杂的数据结构,如嵌套的列表、字典或对象,print() 函数的输出可能会显得杂乱无章,不易阅读。

现在你有以下数据需要打印

data = {
    'name': 'John Doe',
    'age': 30,
    'languages': ['Python', 'JavaScript', 'C++'],
    'address': {
        'street': '123 Main St',
        'city': 'New York',
        'country': 'USA'
    }
}
print("使用 print() 输出:")
print(data)

结果:

使用 print() 输出:
{'name': 'John Doe', 'age': 30, 'languages': ['Python', 'JavaScript', 'C++'], 'address': {'street': '123 Main St', 'city': 'New York', 'country': 'USA'}}

可以看到我们的字典格式全部不见了,print()直接输出了一行数据,这样的输出显得杂乱无章,不易阅读。

这时,你可以使用 pprint 模块中的 pprint() 函数来更好地格式化输出。

pprint 是什么?

pprint 模块提供了一个名为 pprint() 的函数,它以更友好的方式打印数据结构。它会自动进行缩进、换行和对齐,使输出更清晰易读。

以上节数据为例,现在我们使用 pprint() 输出。

import pprint

data = {
    'name': 'John Doe',
    'age': 30,
    'languages': ['Python', 'JavaScript', 'C++'],
    'address': {
        'street': '123 Main St',
        'city': 'New York',
        'country': 'USA'
    }
}
print("使用 print() 输出:")
print(data)

print("\n使用 pprint() 输出:")
pprint.pprint(data)

输出结果:

使用 print() 输出:
{'name': 'John Doe', 'age': 30, 'languages': ['Python', 'JavaScript', 'C++'], 'address': {'street': '123 Main St', 'city': 'New York', 'country': 'USA'}}

使用 pprint() 输出:
{'address': {'city': 'New York',
              'country': 'USA',
              'street': '123 Main St'},
 'age': 30,
 'languages': ['Python', 'JavaScript', 'C++'],
 'name': 'John Doe'}

 通过对比上面的输出,我们可以清楚地看到使用 pprint() 函数打印的输出更加整齐、易读。它将嵌套结构的元素逐层缩进,并对齐键值对,以便更好地展示数据的结构。

因此,当你需要打印复杂的数据结构时,特别是嵌套的字典和列表,使用 pprint() 可以提供更清晰和可读性更好的输出结果。

pprint进阶

pprint() 函数的特性:

  1. 自动缩进和换行:pprint() 函数会自动根据数据结构的层次进行缩进和换行,使输出更加清晰和易读。

  2. 对齐键值对:pprint() 函数会对字典中的键值对进行对齐,使其在垂直方向上对齐,提高可读性。

  3. 支持定制化输出格式:pprint() 函数提供了一些参数,可以根据需要进行定制化的输出格式设置,例如设置缩进空格数、宽度限制等。

下面是一个使用 pprint() 函数的更详细代码示例,演示了其特性:

import pprint

data = {
    'name': 'John Doe',
    'age': 30,
    'languages': ['Python', 'JavaScript', 'C++'],
    'address': {
        'street': '123 Main St',
        'city': 'New York',
        'country': 'USA'
    }
}

print("使用 pprint() 输出:")
pprint.pprint(data, indent=4, width=30, compact=True)

输出结果:

使用 pprint() 输出:
{   'address': {   'city': 'New York',
                    'country': 'USA',
                    'street': '123 Main St'},
    'age': 30,
    'languages': [   'Python',
                     'JavaScript',
                     'C++'],
    'name': 'John Doe'}

在上面的示例中,我们使用了 pprint.pprint() 函数来打印数据结构 data。同时,我们传递了一些参数来定制化输出格式:

  • indent=4:设置缩进空格数为 4,使每个层次的元素缩进 4 个空格。

  • width=30:设置输出宽度为 30,当一行的字符数超过 30 时,自动换行。

  • compact=True:启用紧凑模式,这样字典的键值对会在同一行上,节省空间。

通过这些定制化参数,我们可以更好地控制输出格式,以适应不同的需求。

结语:

print() 是一个简单常用的函数,适合打印简单的输出信息;而 pprint() 是 pprint 模块中的函数,用于打印复杂数据结构时提供更好的格式化输出。pprint() 函数具有自动缩进、换行和对齐键值对的特点,并且提供了一些定制化参数,可以根据需要调整输出格式。这使得打印复杂数据结构时更加方便、清晰和易读。

最后为大家打包了Python全套ke程、电子书+激活码等籽料【戳这里免废领】~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值