python四舍五入保留小数点后三位_Python中的“正确”四舍五入到小数点后3位
我可能遗漏了一些重要的东西,但我无法找到一种方法来在Python(2.7)中将浮点/小数“适当”舍入,至少舍入到小数点后三位。我的意思是1.2225应该四舍五入到1.223,而1.2224应该四舍五入到1.222。在
我知道在Python中,round不适用于float,但我似乎无法使Decimal按预期运行,也无法使ceil函数正常工作。寻找内置的功能,而不是自定义功能的解决方案,但对两者都开放。在>>> x = 1.2225 # expected: 1.223
>>> round(x, 3)
1.222 # incorrect
>>> from math import ceil
>>> ceil(x * 1000.0) / 1000.0
1.223 # correct
>>> y = 1.2224 # expected: 1.222
>>> ceil(y * 1000.0) / 1000.0
1.223 # incorrect
>>> from decimal import Decimal, ROUND_UP, ROUND_HALF_UP
>>> x = Decimal(1.2225)
>>> x.quantize(Decimal('0.001'), ROUND_UP)
Decimal('1.223') # correct
>>> y = Decimal(1.2224)
>>> y.quantize(Decimal('0.001'), ROUND_UP)
Decimal('1.223') # incorrect
>>> y.quantize(Decimal('0.001'), ROUND_HALF_UP)
Decimal('1.222') # correct
>>> x.quantize(Decimal('0.001'), ROUND_HALF_UP)
Decimal('1.222') # incorrect
有没有办法得到想要的结果?在
python四舍五入保留小数点后三位_Python中的“正确”四舍五入到小数点后3位相关推荐
- python单引号双引号三引号_python中的单引号、双引号和三引号有何区别
单引号和双引号 在Python中我们都知道单引号和双引号都可以用来表示一个字符串,比如str1 = 'python' str2 = "python" str1和str2是没有任何区 ...
- python进程间的通信方式三种_Python中的进程间通信
一只甜甜圈 不,zeromq是要走的路.好吃,不是吗?import argparseimport zmqparser = argparse.ArgumentParser(description='ze ...
- python两位小数向上取整函数_python3中的函数如何实现小数向上取整
python3中的函数如何实现小数向上取整 发布时间:2020-11-12 09:25:21 来源:亿速云 阅读:82 作者:小新 这篇文章将为大家详细讲解有关python3中的函数如何实现小数向上取 ...
- python新式类和经典类区别_Python中新式类和经典类的区别,钻石继承
1)首先,写法不一样: class A: pass class B(object): 2)在多继承中,新式类采用广度优先搜索,而旧式类是采用深度优先搜索. 3)新式类更符合OOP编程思想,统一了pyt ...
- 用python将十进制数转换成二进制数_python中的数据结构-将十进制数转换为二进制数...
二进制表示法在计算机科学中很重要,计算机中存储的所有值都以一串二进制数字,即0和1的形式存在. 如果无法在通用表示形式和二进制数字之间来回转换,我们将需要以非常奇怪的方式与计算机进行交互. 十进制的数 ...
- python用保留字while实现无限循环_Python中无限循环需要什么条件
无限循环 如果条件判断语句永远为 true,循环将会无限的执行下去. 如下实例 #!/usr/bin/python # -*- coding: UTF-8 -*- var = 1 while var ...
- python布尔型变量错误的赋值_Python中布尔变量的值为( )
[单选题]x 的 y 次方(xy) 以下表达式正确的是________ [多选题]以下关于 Python 字符串的描述中,正确的是( ) [多选题]下列表达式的值为False的是( ) [其它]返回 ...
- python 不安全的包或方法_Python中的10个常见安全漏洞及修复方法
写安全的代码很困难,当你学习一门编程语言.一个模块或框架时,你会学习其使用方法.在考虑安全性时,你需要考虑如何避免代码被滥用,Python也不例外,即使在标准库中,也存在着许多糟糕的实例.然而,许多 ...
- python中保留两位小数的编写程序_Python中保留两位小数的几种方法
保留两位小数,并做四舍五入处理 方法一: 使用字符串格式化 >>> a = 12.345 >>> print("%.2f" % a) 12.35 ...
最新文章
- CentOS系统安装配置JDK
- [转帖]爬过这 6 个坡,你就能对 Linux 操作系统了如指掌
- ie不支持getElementsByName的解决办法
- 基站基带fgpa 服务器芯片,基于FPGA的AIS基带数据处理芯片设计
- jasmine.spy对象的and.returnValue方法单步调试
- 『数据库』朴实无华的数据库绪论
- linux unshare 命令,详解Linux Namespace之User
- WCF Data Services服务端处理汇总
- Singularity将本地SIF文件,转成sandbox
- android之AlarmManager 全局定时器
- H3C OSPF 单区域、多区域(虚连接)配置
- UITableView局部刷新
- 极客大学架构师训练营 加密技术 高可用系统的度量 高可用系统的架构 高可用系统的运维 第22课 听课总结
- 使用Python控制手机
- 软考信息安全工程师知识总结
- mp4 joiner linux,MP4Joiner怎么用?使用MP4Joiner快速合并多个mp4视频文件的方法介绍
- docker/kubernetes学习笔记(持续更新)
- 在css中怎么做橡皮擦,js 实现橡皮擦 擦图效果(可用于刮刮卡)
- 反函数的导数——arcsinx的导数求导证明
- leaflet基本使用
热门文章
- 【数据采集】将16进制字符串转化为Double类型输出(依照IEEE754标准)
- JavaScript MSN 弹出消息框
- 用visio反向工程画oracle数据库表的结构图
- 领域模型中的各种角色
- 并发服务器设计思路,参考apache学习UDP和QoS,研究成果
- AJAX Control Toolkit 控件学习(转自csdn山巅)
- linux的基础知识——网络字节序转化,ip地址转换函数,sockaddr数据结构
- eclipse中下载spring-tool-suite插件遇到的问题
- 和移动对接短信http协议和cmpp协议那个好_python网络爬虫之HTTP原理,爬虫的基本原理,Cookies和代理介绍...
- 利用Excel进行成对(配对)T检验