我正在尝试右对齐从print获得的数值,但我收到错误:
'float' object has no attribute 'rjust'
这是我的代码,我正在尝试使用它。我应该如何正确对齐print
所得到的所有数值:
enterValue = float(input("The input value is: "))
# We know that the circumference of a circle is 2*pi*r.
CircumferenceV = (2*math.pi*enterValue)
print("The Circumference is : %0.2f" %(circleCircumference.rjust(10)))
答案 0 :(得分:2)
在为rjust
对象定义 float
时,您正在应用str
。另一种方法是与format
上的:fill.precision
符号对齐:
>>> print("{:10.2f}".format(3.142059))
3.14
应用于circleCircumference
:
print("The Circumference is : {:10.2f}".format(circleCircumference))
仅使用%
可以使用以下内容执行相同的操作:
>>> circleCircumference = 3.29920
>>> "Circle circumfence: %10.2f" % circleCircumference
'Circle circumfence: 3.30'
答案 1 :(得分:1)
如果您只想要2位小数,则可以使用Jim建议的相同答案,但稍微修改一下。
print("The Circumference is : {:>10.2f}".format(circleCircumference))
这告诉print语句将circleCircumference打印到2个位置作为浮点数,同时在10个字符列中右对齐它。