我有一个浮点数myfloat = 0.002
我想用空格填充' '
打印而不是尾随零。Python打印浮动填充空格而不是零
比方说,我想打印myfloat
与空格填充右对齐到5个空格。为了清晰起见,我会在浮动后打印'|'
。
我想要什么: 0.002 |
什么填充印刷(我知道)给出:
>>> print(str(myfloat) + '|') # no padding, formatting
0.002|
>>> print('%.5f' % myfloat + '|')
0.00200|
>>> print('{0:<5f}|'.format(myfloat))
0.002000|
>>> print('{0:.5f}|'.format(myfloat))
0.00200|
我知道print('{0:<Xf}|'.format(myfloat))
垫用空格之后X> 8左右。我不想要任何尾随零。
我在同一行上打印多个浮点数。它们具有不同的字符串长度,我希望它们与空格填充而不是零均匀对齐,所以静态填充字符串将不起作用。
举例来说,可以说,我想打印在两行myfloatlist1 = [0.01, 0.002, 0.0003, 0.00004]
和myfloatlist2 = [0.00004, 0.0003, 0.002, 0.01]
内容,每一个具有相同间隔填充:
0.01 0.002 0.0003 0.00004
0.00004 0.0003 0.002 0.01
反正有没有用空格垫浮印(无需转换浮动到一个字符串或东西)?如果您需要更多白
|
打印( 'STR(myfloat).ljust(6,'“)+'):
你尝试过在python'zfill'? – warl0ck
@ warl0ck“string.zfill(s,width):在左边填充一个数字字符串**,数字为零**直到达到给定的宽度,以符号开头的字符串被正确处理。我不是在寻找零填充。 – Alnitak
你可能想看看模块prettytable或pypi上的PTable。 – Gribouillis