我有一个浮动myfloat = 0.002
我想用空格填充' '
打印而不是尾随零。
让我们说我想用空格填充打印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&gt;之后用空格填充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
无论如何用空格填充浮动打印(不将浮动转换为字符串或其他东西)?
答案 0 :(得分:5)
这个怎么样?
{% for case in casestudies %}
编辑:按照Gall的评论,这就足够了
>>> '{0: <8}|'.format(str(myfloat))
'0.002 |'
答案 1 :(得分:1)
试试这个:
print(str(myfloat).ljust(6,'')+'|')
如果您需要更多空格,只需将6更改为您想要的任何内容。
答案 2 :(得分:-1)
你可以简单地做
myfloat = 0.002
pads = ' '*4 # 4 is the number of trailing spaces I am adding. Change accordingly
marker = '|'
print(str(myfloat)+pads+marker) #0.002 |