gpt4 book ai didi

python - 如何使用 Python 漂亮地打印 ASCII 表?

转载 作者:IT老高 更新时间:2023-10-28 20:21:27 25 4
gpt4 key购买 nike

我正在寻找一种方法来漂亮地打印这样的表格:

=======================
| column 1 | column 2 |
=======================
| value1 | value2 |
| value3 | value4 |
=======================

我找到了 asciitable库,但它不做边框等。我不需要任何复杂的数据项格式,它们只是字符串。我确实需要它来自动调整列大小。

是否存在其他库或方法,或者我需要花几分钟自己编写?

最佳答案

我很久以前就读过这个问题,并完成了自己为表格编写的 pretty-print :tabulate .

我的用例是:

  • 我大部分时间都想要单线
  • 它足够聪明,可以为我找出最佳格式
  • 并且可以输出不同的纯文本格式

鉴于您的示例,grid 可能是最相似的输出格式:

from tabulate import tabulate
print tabulate([["value1", "value2"], ["value3", "value4"]], ["column 1", "column 2"], tablefmt="grid")
+------------+------------+
| column 1 | column 2 |
+============+============+
| value1 | value2 |
+------------+------------+
| value3 | value4 |
+------------+------------+

其他支持的格式是 plain(无行)、simple(Pandoc 简单表格)、pipe(如 PHP Markdown Extra 中的表格) , orgtbl(像 Emacs 的 org-mode 中的表),rst(像 reStructuredText 中的简单表)。 gridorgtbl 在 Emacs 中很容易编辑。

性能方面,tabulateasciitable 稍慢,但比 PrettyTabletexttable 快得多。

附:我也是对齐数字的忠实粉丝by a decimal column .所以这是数字的默认对齐方式(如果有的话)(可覆盖)。

关于python - 如何使用 Python 漂亮地打印 ASCII 表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5909873/

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