📜  Python中的精度处理

📅  最后修改于: 2020-04-06 05:08:06             🧑  作者: Mango

Python的定义允许使用不同的函数以几种方式处理浮点数的精度。它们中的大多数是在“ math “模块下定义的。本文讨论了一些最常用的操作。
1. trunc():此函数用于消除浮点数的所有小数部分,并返回不带小数部分的整数。
2. ceil():此函数用于打印大于给定数字最小整数
3. floor():此函数用于打印小于给定整数最大整数

# Python展示如何使用 ceil(), trunc()
# 和 floor()
# 导入 "math"
import math
# 初始化
a = 3.4536
# 使用 trunc()
print ("不带小数部分的整数 : ",end="")
print (math.trunc(a))
# 使用 ceil()
print ("大于给定数字最小整数 : ",end="")
print (math.ceil(a))
# 使用 floor()
print ("小于给定整数最大整数 : ",end="")
print (math.floor(a))

输出:

不带小数部分的整数 : 3
大于给定数字最小整数 : 4
大于给定数字最小整数 : 3
设定精度

有很多方法可以设置浮点值的精度。其中一些将在下面讨论。
1.使用“%”:“%”运算符用于在Python中设置格式和设置精度。这类似于C编程中的 “ printf”语句。
2.使用format():这是格式化字符串以设置精度的另一种方法。
3.使用round(x,n):该函数接受2个参数,即number和要舍入小数部分的数字。

# Python展示设定精度,使用format和round()
# 初始化
a = 3.4536
# 使用 "%" 精确2位小数
print ("两位精度小数(使用 %) : ",end="")
print ('%.2f'%a)
# 使用 format() 精确2位小数
print ("使用 format() 精确2位小数 : ",end="")
print ("{0:.2f}".format(a))
# 使用 round() 精确2位小数
print ("使用 round() 精确2位小数 : ",end="")
print (round(a,2))

输出:

两位精度小数(使用 %) : 3.45
使用 format() 精确2位小数 : 3.45
使用 round() 精确2位小数 : 3.45