Python学习-格式化输出(format)

来源:互联网 发布:男士胸包品牌 知乎 编辑:程序博客网 时间:2024/06/06 07:28

在对浮点型数据进行输出操作时,经常面临着精度的问题,众所周知,计算机里面浮点数的精度一般是比较高的,而我们经常使用是保留小数点后两位。

format函数为我们提供了格式化数据的方法,有关format的格式如下:

format(数值,“格式”)

格式是m.nf,m和n是整数,m表示整个数值占多少位输出,n表示小数点后保留几位小树

 

举例:数值123.45678

print format(123.45678, ‘0.2f’)

print format(123.45678, ’10.2f‘)

输出结果如下:

>>> print format(123.45678, '0.2f')123.46>>> print format(123.45678, '10.2f')    123.46


m.nf 如果m为0,表示仅考虑小数点后又几位,不考虑输出占几位;第二次m取值10,由于123.45仅有五位,所以输出会缩进,也就是右对齐。注意小数点也算作一位。

 

在看下面一种情况

print format(123.45678,‘3.2f’)

>>> print format(123.45678,'3.2f')123.46


对于m的值过小,python为了保证数据的精确,会忽略m值,也就是将m值视为0.这样就能准确输出结果,而不是为了可以保证数据格式忽略数据的正确性。

 

format的另外一个用法就是输出百分比的数值。其语法格式如下:
format(数值,‘m.n%’)

关于m和n的含义,和前面的一样,%表示将要数值转换成百分数。

举例如下:

>>> print (format(0.5,'0.1%'))50.0%>>> print(format(0.4234,'3.1%'))42.3%


同样的如果遇到科学计数法呢,同样可以使用format函数将%换成e就行,其他不变