首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么你需要少看中文技术博客以及如何在Python里面精确四舍五入

今天又有一个Python初学者被中文技术博客中的垃圾文章给误导了。 这位初学者的问题是: 在Python中,如何精确地进行浮点数的四舍五入,保留两位小数?...然而这种文章也是漏洞百出,只要你多尝试几个数字就会发现问题,在Python 2和Python 3下面,效果是不一样的。先来看看Python 2下面的运行效果: ?...在Python 2里面,直接使用 round, 1.125精确到两位小数后为 1.13,而 1.115精确到两位小数后是 1.11。 再来看看Python 3下面的效果: ?...在Python 3下面, 1.125在精确到两位小数以后是 1.12。 他举的例子,在Python 3中先放大再缩小,也并不总是正确。...我们来看一下:https://docs.python.org/zh-cn/3/library/decimal.html#decimal.Decimal.quantize 官方文档给出了具体的写法: >>

66220
您找到你想要的搜索结果了吗?
是的
没有找到

如何在 Python 里面精确四舍五入?

今天又有一个Python初学者被中文技术博客中的垃圾文章给误导了。 这位初学者的问题是: 在Python中,如何精确地进行浮点数的四舍五入,保留两位小数?...然而这种文章也是漏洞百出,只要你多尝试几个数字就会发现问题,在Python 2和Python 3下面,效果是不一样的。先来看看Python 2下面的运行效果: ?...在Python 2里面,直接使用 round, 1.125精确到两位小数后为 1.13,而 1.115精确到两位小数后是 1.11。 再来看看Python 3下面的效果: ?...在Python 3下面, 1.125在精确到两位小数以后是 1.12。 他举的例子,在Python 3中先放大再缩小,也并不总是正确。...我们来看一下:https://docs.python.org/zh-cn/3/library/decimal.html#decimal.Decimal.quantize 官方文档给出了具体的写法: >>

4.9K50

Python里精确地四舍五入,以及你为什么需要少看垃圾博客

今天又有一个Python初学者被中文技术博客中的垃圾文章给误导了。 这位初学者的问题是: 在Python中,如何精确地进行浮点数的四舍五入,保留两位小数?...然而这种文章也是漏洞百出,只要你多尝试几个数字就会发现问题,在Python 2和Python 3下面,效果是不一样的。先来看看Python 2下面的运行效果: ?...在Python 2里面,直接使用round,1.125精确到两位小数后为1.13,而1.115精确到两位小数后是1.11。 再来看看Python 3下面的效果: ?...在Python 3下面,1.125在精确到两位小数以后是1.12。 他举的例子,在Python 3中先放大再缩小,也并不总是正确。...我们来看一下:docs.python.org/zh-cn/3/lib… 官方文档给出了具体的写法: >>>Decimal('1.41421356').quantize(Decimal('1.000'))

5.5K63

python保存两位小数的几种方法,python2保留小数

python保存两位小数的几种方法 文章目录: 一、保留两位小数 且 做四舍五入处理 1、使用字符串格式化 2、使用python内置的round() 函数 3、使用python内置的decimal模块...二、保留两位小数 且 不做四舍五入处理 1、使用序列中的切片 2、使用re正则匹配模块 三、python2保留小数 一、保留两位小数 且 做四舍五入处理 1、使用字符串格式化 >>> x = 3.1415926...内置的decimal模块 decimal 英 /’desɪm(ə)l/ 小数的 quantize 英 /’kwɒntaɪz/ 量化 >>> from decimal import Decimal >>...> x = 3.1415926 >>> Decimal(x).quantize(Decimal("0.00")) Decimal('3.14') >>> a = Decimal(x).quantize(...\d{2}", str(a)) ['3.14'] 三、python2保留小数 1、python2中除法,默认是取商,也就是在做除法的时候你是无法获取小数部分的!

2.8K10

python小数的进位与舍去

以32位IEEE单精度浮点数的NaN为例,按位表示即:S111 1111 1AXX XXXX XXXX XXXX XXXX XXXX,S为符号位,符号位S的取值无关紧要 在python中进行精确的数值运算时...quantize`(*exp* [,*rounding* [,*context* [,*watchexp* ] ] ] ) 舍入后返回一个等于第一个操作数的值,并具有第二个操作数的指数。...>>> Decimal('1.41421356').quantize(Decimal('1.000')) Decimal('1.414') 三.实现四舍五入 舍入后返回一个等于第一个操作数的值,并具有第二个操作数的指数...的指数就是左边数的指数,exponent # 实现四舍五入的方法 >>> from decimal import Decimal, ROUND_HALF_UP >>> Decimal('0.375').quantize...(Decimal('0.00'), rounding=ROUND_HALF_UP) Decimal('0.38') >>> Decimal('0.125').quantize(Decimal('0.00

1.7K10

CPU 混合推理,非常见大模型量化方案:“二三五六” 位量化

前者以 Python 脚本的形态存在于 llama.cpp 项目的目录中,后者需要我们进行项目的构建。...虽然程序的命令行参数看起来很麻烦,但是我们需要使用到的转换命令其实非常简单,使用 Python 调用程序,命令中携带“模型路径”和“输出的模型类型”即可: python ..../quantize --help 看看有没有新的、更适合你的量化方案。名称中的 Q数字 中的数字就是对应的量化的位数啦。.../quantize 【模型地址】【模型类型名称】 如果我们将命令中的“变量”进行替换,改成本文中我使用的模型和我选择的量化方案,命令行如下: ./quantize .....: model size = 65593.31 MB llama_model_quantize_internal: quant size = 23193.68 MB main: quantize

71710

CPU 混合推理,非常见大模型量化方案:“二三五六” 位量化

前者以 Python 脚本的形态存在于 llama.cpp 项目的目录中,后者需要我们进行项目的构建。...虽然程序的命令行参数看起来很麻烦,但是我们需要使用到的转换命令其实非常简单,使用 Python 调用程序,命令中携带“模型路径”和“输出的模型类型”即可: python ....f16 我这里以 YI-34B 的社区 finetune 模型 brucethemoose/CapyTessBorosYi-34B-200K-DARE-Ties 为例子,调整为我自己的模型存放路径: python.../quantize 【模型地址】【模型类型名称】 如果我们将命令中的“变量”进行替换,改成本文中我使用的模型和我选择的量化方案,命令行如下: ./quantize .....: model size = 65593.31 MB llama_model_quantize_internal: quant size = 23193.68 MB main: quantize

86420
领券