Python保留指定位数的小数
Python 指定 保留 小数 位数
2023-06-13 09:13:02 时间
大家好,又见面了,我是你们的朋友全栈君。
Python保留指定位数的小数
1 ’%.2f’ %f 方法(推荐)
f = 1.23456
print('%.4f' % f)
print('%.3f' % f)
print('%.2f' % f)
结果: 1.2346 1.235 1.23 这个方法会进行四舍五入
2 format函数(推荐)
print(format(1.23456, '.2f'))
print(format(1.23456, '.3f'))
print(format(1.23456, '.4f'))
1.23
1.235
1.2346
这个方法会进行四舍五入
3 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)。 (6)整数部分为奇数的时候,小数位5进位。(round(3.5)变为4) ————————————————
4 不进行四舍五入,直接进行截断
(1)可以放大指定的倍数,然后取整,然后再除以指定的倍数。
#保留三位小数截断 python3
print(int(1.23456 * 1000) / 1000 )
(2) 使用字符串截取,截取小数点后指定的位数
原文链接:
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/169773.html原文链接:https://javaforall.cn
相关文章
- 建议收藏!Python 读取千万级数据自动写入 MySQL 数据库
- python截图识别文字_Python文字截图识别OCR工具实例解析
- java和python哪个值得学-学java好还是Python好?
- python控制键盘鼠标实现窗口程序自动化2021.10.14
- 【说站】Python Modules是什么意思
- 【说站】python如何导入模块的特定函数
- 遗传算法的应用实例python实现_遗传算法Python解决一个问题
- python读取pkl_Python读取文件的一段内容
- Python udp编程_python socket udp
- macOS下安装和运行Python
- python集合_python集合交集
- 软件测试|教你使用Python实现五子棋游戏(一)
- Python去除字符串中空格(删除指定字符)的3种方法
- python的协程和异步io【select|poll|epoll】详解编程语言
- 如何使用Python安装MySQL(python安装mysql)
- Python NumPy用法
- python网络编程学习笔记(10):webpy框架
- Python实现从url中提取域名的几种方法