2 回答
TA贡献1820条经验 获得超10个赞
您可以使用科学记数法格式,如下所示:
num = 51715.505899065996
# .3 to keep 3 digit in fractional part
print('%.3e' % num)
print('{:.3e}'.format(num))
# 5.172e+04
对于您的场景,您可以按地图使用格式,我将a, b, c,d视为列表,我不知道我是否对此有误解:
a = [51715.505899065996, 2724172.4436]
b = [2724172.4436709681, 81070.2123]
c = [3081070.212397085, 715.50589906599]
d = [3419080.1274145059, 9080.12741450]
zip(a,b,c,d)
with open('output.dat', 'w') as f:
# print >>f, ("%-25s %-25s %-25s %s" %(x, y, z, k))
writer = csv.writer(f, delimiter='\t')
for A, B, C, D in zip(a,b,c,d):
writer.writerow(map(lambda x:'{:.3e}'.format(x), (A,B,C,D)))
希望对你有帮助。
TA贡献1827条经验 获得超7个赞
print('%.xe' % y)
或print('{:.xe}'.format(y)
将打印一些y
科学记数法,用一个小数精度x
地方
例如,print('%.2e' % 12)
将打印1.20e+.01
添加回答
举报