Trong định nghĩa của mình, ngôn ngữ lập trình Python có cho phép xử lý độ chính xác của các số dấu phẩy động (floating point numbers) theo nhiều cách, sử dụng các hàm khác nhau. Hầu hết trong số chúng đều được định nghĩa trong module “math”. Một số hàm được sử dụng nhiều nhất sẽ được giới thiệu trong bài học này.
1. Hàm trunc(): Hàm này được sử dụng để loại bỏ tất cả phần thập phân của số dấu phẩy động và trả về số nguyên mà không có phần thập phân.
2. Hàm ceil(): Hàm này được sử dụng để in ra số nguyên đã được làm tròn lên của số thập phân ban đầu (nó trả về số nguyên nhỏ nhất mà lớn hơn số thập phân đã cho ban đầu).
3. Hàm floor(): Hàm này được sử dụng để in ra số nguyên đã được làm tròn xuống của số thập phân ban đầu (nó trả về số nguyên lớn nhất mà nhỏ hơn số thập phân đã cho ban đầu).
# -----------------------------------------------------------
#Cafedev.vn - Kênh thông tin IT hàng đầu Việt Nam
#@author cafedevn
#Contact: cafedevn@gmail.com
#Fanpage: https://www.facebook.com/cafedevn
#Instagram: https://instagram.com/cafedevn
#Twitter: https://twitter.com/CafedeVn
#Linkedin: https://www.linkedin.com/in/cafe-dev-407054199/
# -----------------------------------------------------------
# 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))
Kết quả in ra là:
The integral value of number is : 3
The smallest integer greater than number is : 4
The greatest integer smaller than number is : 3
1. Thiết lập độ chính xác
Có rất nhiều cách để cài đặt độ chính xác cho các giá trị dấu phẩy động. Sau đây là một số cách phổ biến thường gặp.
1. Sử dụng ký hiệu “%”: Toán tử “%” được sử dụng để định dạng lại, cũng như thiết lập độ chính xác trong Python. Cách này tương tự như cách được sử dụng trong câu lệnh”printf” của ngôn ngữ C.
2. Sử dụng hàm format(): Đây là một cách khác để định dạng lại chuỗi nhằm thiết lập độ chính xác.
3. Sử dụng hàm round(x, n): Hàm này nhận vào 2 đối số, là số được xử lý, và số lượng chữ số nằm sau dấu phẩy mà chúng ta muốn làm tròn đến đó.
# -----------------------------------------------------------
#Cafedev.vn - Kênh thông tin IT hàng đầu Việt Nam
#@author cafedevn
#Contact: cafedevn@gmail.com
#Fanpage: https://www.facebook.com/cafedevn
#Instagram: https://instagram.com/cafedevn
#Twitter: https://twitter.com/CafedeVn
#Linkedin: https://www.linkedin.com/in/cafe-dev-407054199/
# -----------------------------------------------------------
# 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))
Kết quả in ra là:
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
Nguồn và Tài liệu tiếng anh tham khảo:
Tài liệu từ cafedev:
- Full series tự học Python từ cơ bản tới nâng cao tại đây nha.
- Ebook về python tại đây.
- Các series tự học lập trình khác
Nếu bạn thấy hay và hữu ích, bạn có thể tham gia các kênh sau của cafedev để nhận được nhiều hơn nữa:
Chào thân ái và quyết thắng!