21番茄网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 21番茄网
查看: 908|回复: 0

python四舍五入的方法

[复制链接]

720

主题

940

帖子

3116

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3116
发表于 2020-12-10 16:28:56 | 显示全部楼层 |阅读模式
python四舍五入的方法
用round:
print(round(2.675, 2)
#结果为:2.67

      后面的2表示保留两位小数。
      round不能完全四舍五入的原因,二进制的误差问题。

python四舍五入的方法  Python基础语法 1
                               
登录/注册后可看大图


解决方法:
1.把小数扩大100倍,再缩小100倍,但某些情况还是有误差。
2.引入decimal.Decimal
from _pydecimal import Decimal, Context, ROUND_HALF_UP
print(Context(prec=3, rounding=ROUND_HALF_UP).create_decimal('1.325'))
#打印结果:
#1.33

以上代码,以后直接拿过来用吧。其中的 3 表示总的位数,1.325写成自己的数

来自:
1.四舍五入就用round( )?Python四舍五入的正确打开方式!:https://blog.csdn.net/qq_39234705/article/details/82817703
2.python3:小数位的四舍五入(用两种方法解决round 遇5不进):https://blog.csdn.net/qq_34979346/article/details/83827044












上一篇:注意:int()只取整数,不会四舍五入
下一篇:向上取整用math.ceil
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|21番茄网 ( 粤ICP备10099428号 ) 奇远富

GMT+8, 2025-2-23 00:51 , Processed in 1.899596 second(s), 32 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表