gpt4 book ai didi

python - tabulate:为每列定义 floatfmt

转载 作者:行者123 更新时间:2023-11-30 22:43:00 25 4
gpt4 key购买 nike

我正在使用 tabulate 0.75 生成 LaTeX 表格。生成表格的函数 tabulate 有一个内置函数来格式化输入。但我想定义每列本身的小数位数。例如

a      b
18.12 16
17.47 15

这是内置函数 (floatfmt=".2f"),它运行完美 - 但它对每一列的作用都是相同的。

tabulate(tables[i], headers[i], numalign="center", tablefmt="latex_booktabs", floatfmt=".2f")

我通过以下方式获取数据

tables = [(list(zip(
unumpy.nominal_values(dt),
unumpy.nominal_values(U),
unumpy.nominal_values(I),
unumpy.nominal_values(E),
unumpy.std_devs(E)))), ............and so on

我在列表中使用 ufloat

array123 = ufloat(nominalvalues, errors)

很常见,因为它使处理错误变得非常容易。有谁知道一种简单的格式化方法吗?

"{:.2f}".format(unumpy.nominal_values(E))
TypeError: non-empty format string passed to object.__format__

这不起作用。

提前致谢。

最佳答案

来自documentation :

floatfmt argument can be a list or a tuple of format strings, one per column, in which case every column may have different number formatting::

>>> print tabulate([[0.12345, 0.12345, 0.12345]], floatfmt=(".1f", ".3f"))
--- ----- -------
0.1 0.123 0.12345
--- ----- -------

这应该会让你的代码更加整洁。

关于python - tabulate:为每列定义 floatfmt,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41925818/

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