📜  Python中的精确处理

📅  最后修改于: 2022-05-13 01:55:11.196000             🧑  作者: Mango

Python中的精确处理

Python在其定义中允许使用不同的函数以多种方式处理浮点数的精度。它们中的大多数是在“数学”模块下定义的。本文讨论了一些最常用的操作。

  1. trunc():-该函数用于消除浮点数的所有小数部分,并返回不带小数部分的整数。
  2. ceil():-此函数用于打印大于给定数字的最小整数
  3. floor():-此函数用于打印小于给定整数的最大整数
Python3
# Python code to demonstrate ceil(), trunc()
# and floor()
 
# importing "math" for precision function
import math
 
# initializing value
a = 3.4536
 
# using trunc() to print integer after truncating
print("The integral value of number is : ", end="")
print(math.trunc(a))
 
# using ceil() to print number after ceiling
print("The smallest integer greater than number is : ", end="")
print(math.ceil(a))
 
# using floor() to print number after flooring
print("The greatest integer smaller than number is : ", end="")
print(math.floor(a))


Python3
# Python code to demonstrate precision
# and round()
 
# initializing value
a = 3.4536
 
# using "%" to print value till 2 decimal places
print ("The value of number till 2 decimal place(using %) is : ",end="")
print ('%.2f'%a)
 
# using format() to print value till 2 decimal places
print ("The value of number till 2 decimal place(using format()) is : ",end="")
print ("{0:.2f}".format(a))
 
# using round() to print value till 2 decimal places
print ("The value of number till 2 decimal place(using round()) is : ",end="")
print (round(a,2))


输出 :

The integral value of number is : 3
The smallest integer greater than number is : 4
The greatest integer smaller than number is : 3

设置精度

有很多方法可以设置浮点值的精度。其中一些将在下面讨论。

  1. 使用“%”:- “%”运算符用于在Python中格式化和设置精度。这类似于 C 编程中的“printf”语句。
  2. 使用 format():-这是另一种格式化字符串以设置精度的方法。
  3. 使用 round(x,n):-这个函数有 2 个参数, number和我们希望小数部分四舍五入的数字。

Python3

# Python code to demonstrate precision
# and round()
 
# initializing value
a = 3.4536
 
# using "%" to print value till 2 decimal places
print ("The value of number till 2 decimal place(using %) is : ",end="")
print ('%.2f'%a)
 
# using format() to print value till 2 decimal places
print ("The value of number till 2 decimal place(using format()) is : ",end="")
print ("{0:.2f}".format(a))
 
# using round() to print value till 2 decimal places
print ("The value of number till 2 decimal place(using round()) is : ",end="")
print (round(a,2))

输出 :

The value of number till 2 decimal place(using %) is : 3.45
The value of number till 2 decimal place(using format()) is : 3.45
The value of number till 2 decimal place(using round()) is : 3.45