共计 1903 个字符,预计需要花费 5 分钟才能阅读完成。
学过编程咱们都晓得,无论什么语言,其实都是相通的,,当咱们学会了并把握好了一种语言后,咱们再去理解另外一种语言,其实就很容易了。
- ‘’%.2f’%f 办法(举荐)
In [1]: f = 1.23456
In [2]: '%.4f' % f
Out[2]: '1.2346'
In [3]: '%.3f' % f
Out[3]: '1.235'
In [4]: '%.2f' % f
Out[4]: '1.23'
In [5]: # 等价于上面的代码
In [6]: print('%.4f' % f)
1.2346
In [7]: print('%.3f' % f)
1.235
In [8]: print('%.2f' % f)
1.23
提醒
这个办法会进行四舍五入。
-
format 函数(举荐)
In [10]: format(1.23456, '.2f') Out[10]: '1.23' In [11]: format(1.23456, '.3f') Out[11]: '1.235' In [12]: format(1.23456, '.4f') Out[12]: '1.2346' In [13]: # 等价于 In [14]: print(format(1.23456, '.2f')) 1.23 In [15]: print(format(1.23456, '.3f')) 1.235 In [16]: print(format(1.23456, '.4f')) 1.2346
提醒
这个办法会进行四舍五入。
补充
In [30]: print("{num:.2f}".format(num=0.13333))
0.13
In [31]: print("{num:.2f}".format(num=0.10333))
0.10
In [32]: print("{num:.2f}".format(num=0.10533))
0.11
In [33]: print("{num:.2f}".format(num=0.11533))
0.12
下表展现了 str.format() 格式化数字的多种办法:
^, <, > 别离是居中、左对齐、右对齐,前面带宽度,: 号前面带填充的字符,只能是一个字符,不指定则默认是用空格填充。
- 示意在负数前显示 +,正数前显示 -;(空格)示意在负数前加空格
b、d、o、x 别离是二进制、十进制、八进制、十六进制。
此外咱们能够应用大括号 {} 来本义大括号,如下实例:
print ("{} 对应的地位是 {{0}}".format("aiyc"))
输入后果为:
aiyc 对应的地位是 {0}
- round() 函数
其实这个办法不举荐大家应用,查问材料发现外面的坑其实很多,python2 和 python3 外面的坑还不太一样,在此简略形容一下 python3 对应的坑的状况。
a = 1.23456
b = 2.355
c = 3.5
d = 2.5
print(round(a, 3))
print(round(b, 2))
print(round(c))
print(round(d))
输入后果:
1.235 # 1.23456 最终向前进位了
2.35 # 2.355 竟然没进位
4 # 最终 3.5 竟然变为 4 了
2 # 最终 2.5 取值变为 2
(1)通过下面的函数,看着是不是很晕,感觉 round(x, n) 函数是否进位也没看出是啥法则;
(2)round(x, n) 函数中,是否进位或四舍五入,取决于 n 位以及 n+1 位小数的值;
(3)只有当 n+1 位数字是 5 的时候,容易混同,如果 n 为偶数,则 n+1 位数是 5,则进位,例如 round(1.23456, 3) 最终变为 1.235
(4)如果 n 为奇数,则 n+1 位是数 5,那不进位,例如 round(2.355, 2),最终为 2.35
(5)如果 n 为 0,即没有填写 n 的时候,最终后果与下面相同,即整数局部为偶数的时候,小数位 5 不进位,例如:round(2.5) 变为 2。
In [21]: round(2.5)
Out[21]: 2
In [22]: round(3.5)
Out[22]: 4
In [23]: round(4.5)
Out[23]: 4
In [24]: round(5.5)
Out[24]: 6
In [25]: round(6.5)
Out[25]: 6
info 小结
n 为 0 的时候,奇数向上取整、偶数向下取整。【当然,你也能够了解为 5 进不进位】
(6)整数局部为奇数的时候,小数位 5 进位。(round(3.5) 变为 4)
-
不进行四舍五入,间接进行截断
(1)能够放大指定的倍数,而后取整,而后再除以指定的倍数。# 保留三位小数截断 python3 print(int(1.23456 * 1000) / 1000 )
(2) 应用字符串截取,截取小数点后指定的位数
以上就是本次分享的全部内容,当初想要学习编程的小伙伴指路 Python 技术大本营,欢送各位的到来哦~