打印文本后,数字格式无法与制表一起使用

时间:2018-09-30 11:49:27

标签: python floating-point tabular

我正在写这个学习Python的小程序,但遇到了一个问题。我使用制表符,将数字格式设置为分隔符后设置为5个数字,以使所有内容看起来都不错,并且可以正常工作,直到我在表中打印文本为止。文本打印后(说明您不能除以0),该列上的格式似乎消失了。

代码是:

if skaiciuoti == True:
while bp <= bg:
    if (bp-a != 0):
        y = float(a / (bp - a))
        sk1.append(a)
        sk2.append(bp)
        sk3.append(y)
        bp = bp + bz
    elif (bp - a == 0):
        sk1.append(a)
        sk2.append(bp)
        sk3.append('Veiksmas negalimas (dalyba is 0)')
        bp = bp + bz

lentele = ['A reiksme', 'B reiksme', 'Y reiksme']
duomenys = zip(sk1, sk2, sk3)

print(tabulate (duomenys, headers=lentele, floatfmt=".5f", tablefmt="grid"))

以下图片可以更好地说明我的问题:

工作一个

一个破了

在将数字附加到列表之前,我已经尝试过格式化它,但是没有用。

欢迎任何建议和想法。

1 个答案:

答案 0 :(得分:0)

好的,我已经设法自己修复了。真的没有那么难,我只是没有考虑过。

对我有用的解决方案是像这样将数字附加到列表(不在列表之前)时格式化数字

sk3.append(format(y, '.5f'))