gpt4 book ai didi

python - 将列表打印为表格数据

转载 作者:IT老高 更新时间:2023-10-28 12:08:34 27 4
gpt4 key购买 nike

我对 Python 还是很陌生,现在我正在努力为打印输出格式化我的数据。

我有一个用于两个标题的列表,以及一个应该是表格内容的矩阵。像这样:

teams_list = ["Man Utd", "Man City", "T Hotspur"]
data = np.array([[1, 2, 1],
[0, 1, 0],
[2, 4, 2]])

请注意,标题名称的长度不一定相同。不过,数据条目都是整数。

现在,我想用表格格式表示它,如下所示:

            Man Utd   Man City   T Hotspur
Man Utd 1 0 0
Man City 1 1 0
T Hotspur 0 1 2

我有一种预感,它必须有一个数据结构,但我找不到它。我尝试过使用字典和格式化打印,我尝试过带有缩进的 for 循环,我尝试过打印为字符串。

我确信一定有一个非常简单的方法可以做到这一点,但由于缺乏经验,我可能会错过它。

最佳答案

为此目的有一些轻巧有用的python包:

1.制表:https://pypi.python.org/pypi/tabulate

from tabulate import tabulate
print(tabulate([['Alice', 24], ['Bob', 19]], headers=['Name', 'Age']))
Name      Age
------ -----
Alice 24
Bob 19

tabulate 有许多选项来指定标题和表格格式。

print(tabulate([['Alice', 24], ['Bob', 19]], headers=['Name', 'Age'], tablefmt='orgtbl'))
| Name   |   Age |
|--------+-------|
| Alice | 24 |
| Bob | 19 |

<强>2。漂亮表:https://pypi.python.org/pypi/PrettyTable

from prettytable import PrettyTable
t = PrettyTable(['Name', 'Age'])
t.add_row(['Alice', 24])
t.add_row(['Bob', 19])
print(t)
+-------+-----+
| Name | Age |
+-------+-----+
| Alice | 24 |
| Bob | 19 |
+-------+-----+

PrettyTable 具有从 csv、html、sql 数据库读取数据的选项。您还可以选择数据子集、对表格进行排序和更改表格样式。

3.文本表:https://pypi.python.org/pypi/texttable

from texttable import Texttable
t = Texttable()
t.add_rows([['Name', 'Age'], ['Alice', 24], ['Bob', 19]])
print(t.draw())
+-------+-----+
| Name | Age |
+=======+=====+
| Alice | 24 |
+-------+-----+
| Bob | 19 |
+-------+-----+

使用 texttable,您可以控制水平/垂直对齐、边框样式和数据类型。

4.术语表:https://github.com/nschloe/termtables

import termtables as tt

string = tt.to_string(
[["Alice", 24], ["Bob", 19]],
header=["Name", "Age"],
style=tt.styles.ascii_thin_double,
# alignment="ll",
# padding=(0, 1),
)
print(string)
+-------+-----+
| Name | Age |
+=======+=====+
| Alice | 24 |
+-------+-----+
| Bob | 19 |
+-------+-----+

使用 texttable,您可以控制水平/垂直对齐、边框样式和数据类型。

其他选项:

  • terminaltables从字符串列表中轻松绘制终端/控制台应用程序中的表格。支持多行。
  • asciitable Asciitable 可以通过内置的扩展阅读器类读取和写入各种 ASCII 表格格式。

关于python - 将列表打印为表格数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9535954/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com