使用format()迷你语言将Floats与Python 2.7中的小数点对齐

时间:2013-03-12 15:44:45

标签: python python-2.7 format

我想打印线条,使数字的小数点对齐。目前,它打印如下所示:

ydisp       0.176
xdisp       -0.509

我想要的是这样的

ydisp        0.176
xdisp       -0.509

我使用的代码是

print "{:{width}} {}".format(items,float_dict[items], width=12)

但是我现在有点迷失了,我在Python 2.7手册中找到了Mini语言的下一节

“在宽度字段前加零('0')字符可以为数字类型启用符号识别的零填充。这相当于填充字符'0',对齐类型为'='。” / p>

我无法真正使用这个'0'字符。如果有人能在这里给我一个提示,那就太好了。

注意:字典键是字符串键,值类型为float。

1 个答案:

答案 0 :(得分:8)

使用' '作为符号修饰符,为符号添加空格:

>>> '{:20} {: }'.format('ydisp', 0.176)
'ydisp                 0.176'
>>> '{:20} {: }'.format('xdisp', -0.509)
'xdisp                -0.509'

注意:冒号后面的空格。这会导致正数填充左侧的空格,负数会显示-