Python以表格形式输出内容到终端的常见方式

 更新时间:2025年05月08日 08:49:16   作者:mob649e81593bda  
在Python编程语言中,我们经常需要在终端输出数据,并且有时候需要以表格的形式展示数据,本文将介绍如何在Python中使用这些库来输出表格,需要的可以参考下

在Python编程语言中,我们经常需要在终端输出数据,并且有时候需要以表格的形式展示数据。Python提供了一些库来帮助我们实现在终端输出表格的功能,这样可以让数据更加直观和易于阅读。本文将介绍如何在Python中使用这些库来输出表格,并结合代码示例来帮助读者更好地理解。

使用tabulate库输出表格

在Python中,一个常用的库来输出表格是tabulate库。这个库可以让我们在终端输出美观的表格,支持多种不同的格式化输出。首先,我们需要安装tabulate库:

pip install tabulate

接下来,我们来看一个使用tabulate库输出表格的简单示例:

from tabulate import tabulate

data = [
    ["Alice", 24],
    ["Bob", 30],
    ["Charlie", 28]
]

headers = ["Name", "Age"]

table = tabulate(data, headers=headers, tablefmt="grid")
print(table)

运行上面的代码,我们将会在终端输出如下的表格:

+---------+-----+
| Name    | Age |
+---------+-----+
| Alice   |  24 |
| Bob     |  30 |
| Charlie |  28 |
+---------+-----+

可以看到,使用tabulate库可以简单快速地输出一个美观的表格,使数据更易于理解。

使用prettytable库输出表格

除了tabulate库之外,还有一个常用的库是prettytable库。这个库也可以用来在终端输出表格,并且提供了更多的自定义选项。同样,我们需要先安装prettytable库:

pip install prettytable

接下来,我们来看一个使用prettytable库输出表格的示例:

from prettytable import PrettyTable

table = PrettyTable()

table.field_names = ["Name", "Age"]
table.add_row(["Alice", 24])
table.add_row(["Bob", 30])
table.add_row(["Charlie", 28])

print(table)

运行上面的代码,我们会在终端输出类似下面的表格:

+---------+-----+
|  Name   | Age |
+---------+-----+
|  Alice  |  24 |
|   Bob   |  30 |
| Charlie |  28 |
+---------+-----+

prettytable库同样提供了简单易用的接口来输出表格,可以根据自己的需求选择合适的库来使用。

饼状图示例

除了输出表格,有时候我们也需要在终端中输出一些图表,比如饼状图。在Python中,我们可以使用matplotlib库来实现绘制饼状图,并且可以将其输出到终端。

下面是一个简单的绘制饼状图并输出到终端的示例:

import matplotlib.pyplot as plt

sizes = [25, 35, 20, 20]
labels = ['A', 'B', 'C', 'D']

plt.pie(sizes, labels=labels, autopct='%1.1f%%')
plt.show()

运行上面的代码,我们将在终端输出一个简单的饼状图,展示每个部分的占比情况。

关系图示例

另外,有时候我们也需要在终端中输出关系图,展示数据之间的关系。在Python中,我们可以使用graphviz库来实现绘制关系图,并且输出到终端。

下面是一个简单的绘制关系图并输出到终端的示例:

from graphviz import Digraph

dot = Digraph()

dot.node('A', 'Alice')
dot.node('B', 'Bob')
dot.node('C', 'Charlie')

dot.edges(['AB', 'BC'])

print(dot.source)

运行上面的代码,我们将在终端输出一个简单的关系图,展示数据之间的关系。graphviz库提供了强大的功能来绘制各种类型的图形,可以根据自己的需求来绘制不同样式的关系图。

使用Python的第三方库Pandas输出表格

Pandas是Python的一个数据处理库,可以用于读取、处理和输出表格数据。安装方法:

pip install pandas

使用方法如下:

import pandas as pd
data = [["张三", "20", "男"], ["李四", "22", "女"]]
df = pd.DataFrame(data, columns=["姓名", "年龄", "性别"])
print(df)

输出结果如下:

姓名 年龄 性别
0 张三 20 男
1 李四 22 女

其中,`pd.DataFrame`创建一个表格对象,`columns`设置表格的列名,数据通过列表传入。

使用Texttable库

要使用 Texttable 库打印以上的表格,你可以按照以下示例代码进行操作:

from texttable import Texttable

headers = ['水果', '价格', '国家']

fruits = [
    ['苹果', 4, '中国'],
    ['橙子', 5, '中国'],
    ['梨', 6, '中国'],
    ['菠萝', 7, '中国'],
]

table = Texttable()
table.set_cols_align(['l', 'r', 'l'])
table.header(headers)
table.add_rows(fruits)

print(table.draw())

运行以上代码,将会输出如下的表格:

+--------+-------+--------+
|  水果  | 价格  |  国家  |
+========+=======+========+
| 苹果   |  4    | 中国 |
+--------+-------+--------+
| 橙子   |  5    | 中国 |
+--------+-------+--------+
| 梨     |  6    | 中国 |
+--------+-------+--------+
| 菠萝   |  7    | 中国 |
+--------+-------+--------+

在这个示例中,我们首先导入 Texttable 类。然后,创建一个 Texttable 对象,并使用 set_cols_align() 方法设置列的对齐方式(‘l’ 表示左对齐,‘r’ 表示右对齐,‘c’ 表示居中对齐)。接下来,使用 header() 方法设置表头,使用 add_rows() 方法逐行添加数据。最后,使用 draw() 方法生成表格的字符串表示,并使用 print() 函数打印出来。

Texttable 提供了一些其他的方法和选项,可以用于自定义表格的样式和格式。你可以查阅 Texttable 的文档以获取更多详细信息,并根据需要进行定制。

到此这篇关于Python以表格形式输出内容到终端的常见方式的文章就介绍到这了,更多相关Python终端输出表格内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python办公自动化(Excel)的实例教程

    python办公自动化(Excel)的实例教程

    使用Excel自动化处理,将会用到Python第三方库,所以我们需要提前通过来进行安装,下面这篇文章主要给大家介绍了关于python办公自动化(Excel)的相关资料,需要的朋友可以参考下
    2022-11-11
  • Python 做曲线拟合和求积分的方法

    Python 做曲线拟合和求积分的方法

    今天小编就为大家分享一篇Python 做曲线拟合和求积分的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • 讲解Python中for循环下的索引变量的作用域

    讲解Python中for循环下的索引变量的作用域

    这篇文章主要介绍了讲解Python中for循环下的索引变量的作用域,是Python学习当中的基础知识,本文给出了Python3的示例帮助读者理解,需要的朋友可以参考下
    2015-04-04
  • 对python内置map和six.moves.map的区别详解

    对python内置map和six.moves.map的区别详解

    今天小编就为大家分享一篇对python内置map和six.moves.map的区别详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • Python顺序结构语句详解

    Python顺序结构语句详解

    这篇文章主要为大家介绍了Python顺序结构语句,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-01-01
  • Python格式化字符串的四种常见方式

    Python格式化字符串的四种常见方式

    在 Python 编程中,格式化字符串是一项常见且重要的任务,Python 提供了多种格式化字符串的方式,每种方式都有其特点和适用场景,本文将详细介绍 Python 中格式化字符串的 4 种常见方式,需要的朋友可以参考下
    2025-04-04
  • pytest实现测试用例参数化

    pytest实现测试用例参数化

    这篇文章主要介绍了pytest实现测试用例参数化,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • plt.title()中文无法显示的问题解决

    plt.title()中文无法显示的问题解决

    本文主要介绍了plt.title()中文无法显示的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04
  • Python从csv文件中读取数据及提取数据的方法

    Python从csv文件中读取数据及提取数据的方法

    这篇文章主要介绍了Python从csv文件中读取数据并提取数据的方法,文中通过多种方法给大家讲解获取指定列的数据,并存入一个数组中,每种方法通过实例代码给大家介绍的非常详细,需要的朋友参考下吧
    2021-11-11
  • 一文带你解锁Python文件匹配技巧

    一文带你解锁Python文件匹配技巧

    在日常的文件操作和数据处理中,文件匹配是一个非常常见的任务,本文将详细介绍如何使用 Python 实现文件匹配,有需要的小伙伴可以参考下
    2024-12-12

最新评论