程序似乎工作正常。它给出了一个输出,但从数字6到数字9,它会使我的圆周偏离线。这是一个格式问题,如果是这样,我需要做些什么来解决这个问题。我正在使用python 3.4。
def main():
print ('Radius\tArea\tCircumference')
print ('-----------------------------')
for Radius in range(1 , 11):
round (3)
Area = (Radius)**2*3.14
Circumference = (Radius)*2*(3.14)
a = Radius
b = Area
c = Circumference
d = round(a, 3)
e = round(b, 3)
f = round(c, 3)
print (d, '\t', (e), '\t', (f))
这是我得到的结果
1 3.14 6.28
2 12.56 12.56
3 28.26 18.84
4 50.24 25.12
5 78.5 31.4
6 113.04 37.68
7 153.86 43.96
8 200.96 50.24
9 254.34 56.52
10 314.0 62.8
答案 0 :(得分:1)
您可以使用string formatting使用str.format
,使输出更具吸引力:
print ('{:2d}{:10.3f}{:10.3f}'.format(d, (e), (f)))
在这种情况下,格式字符串表示:
在2个字符宽的整数字段中右对齐打印第一个值。
在十进制字段中右对齐打印第二个值10个字符宽,小数点右边有3个位置。
在十进制字段中右对齐打印第三个值,宽度为10个字符,小数点右边有3个位置。
另请注意:如果仅使用round()
影响打印输出,则可以跳过该步骤。字符串格式化程序会为您舍入数字,因此您只能打印a,b,c
而不是d,e,f
:
print ('{:2d}{:10.2f}{:10.2f}'.format(a, b, c))