Python如何取小数点位数

简单介绍

在写一个数据平台的时候,发现须要进行经过率的统计,因此不可避免的出现小数的状况。至此,会出现无限小数,那么如何进行取舍呢?html

 

实际操做

能够使用decimal模块,decimal意思为十进制,这个模块提供了十进制浮点运算支持。orm

经常使用方法htm

1.能够传递给Decimal整型或者字符串参数,但不能是浮点数据,由于浮点数据自己就不许确。blog

2.要从浮点数据转换为Decimal类型ci

from decimal import *字符串

Decimal.from_float(12.222)get

# 结果为Decimal('12.2219999999999995310417943983338773250579833984375')string

3.经过设定有效数字,限定结果样式:io

from decimal import *form

getcontext().prec=6

Decimal(1)/Decimal(7)

# 结果为Decimal('0.142857'),六个有效数字

4.四舍五入,保留几位小数

from decimal import *

Decimal('50.5679').quantize(Decimal('0.00'))

# 结果为Decimal('50.57'),结果四舍五入保留了两位小数

5.Decimal 结果转化为string

from decimal import *

str(Decimal('3.40').quantize(Decimal('0.0')))

# 结果为'3.40',字符串类型

 
效果

 

参考:

decimal模块

相关文章
相关标签/搜索