CÔNG CỤ
MODULES
THAM KHẢO
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
MỚI CẬP NHẬT

Thông báo: Download 4 khóa học Python từ cơ bản đến nâng cao tại đây.

Chuyển đổi float sang int trong Python

Trong Python, số thực (float) và số nguyên (int) là hai kiểu dữ liệu quan trọng được sử dụng rộng rãi. Đôi khi, bạn cần chuyển đổi giữa hai kiểu dữ liệu này, đặc biệt là từ số thực sang số nguyên. Quá trình này thường gây ra mất mát dữ liệu do phần thập phân bị loại bỏ. Bài viết này sẽ giới thiệu cho bạn cách chuyển đổi số thực sang số nguyên bằng cách sử dụng các hàm khác nhau trong module math của Python, như cắt bỏ phần thập phân (truncation), làm tròn xuống (floor) và làm tròn lên (ceiling). Qua đó, bạn sẽ hiểu rõ hơn về cách thức hoạt động của các phương pháp này và ứng dụng của chúng trong các tình huống khác nhau.

test php

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Chuyển đổi số thực (float) sang số nguyên (int) trong Python

Trong bài viết này, bạn sẽ học cách chuyển đổi số thực sang số nguyên trong Python.

Giả sử bạn có một số thực như 20.3 và bạn muốn chuyển nó thành số nguyên. Khi chuyển đổi từ số thực sang số nguyên, bạn sẽ mất đi phần dữ liệu sau dấu thập phân. Ví dụ, 20.3 có thể trở thành 20 hoặc 21.

Python cung cấp một số hàm trong module math để chuyển đổi từ số thực sang số nguyên, bao gồm:

Bài viết này được đăng tại [free tuts .net]

  • Cắt bỏ phần thập phân (Truncation)
  • Làm tròn xuống (Floor)
  • Làm tròn lên (Ceiling)

Cắt bỏ phần thập phân (Truncation)

Hàm trunc(x) trả về phần nguyên của số x, bỏ qua tất cả các phần sau dấu thập phân. Ví dụ:

from math import trunc

print(trunc(12.2))
print(trunc(12.5))
print(trunc(12.7))

Kết quả:

12
12
12

Tương tự, hàm int() cũng nhận vào một số thực và sử dụng phương pháp cắt bỏ phần thập phân để chuyển đổi số thực sang số nguyên:

print(int(12.2))
print(int(12.5))
print(int(12.7))

Làm tròn xuống (Floor)

Hàm floor(x) trả về số nguyên lớn nhất nhỏ hơn hoặc bằng x. Ví dụ:

from math import floor

print(floor(12.2))
print(floor(12.5))
print(floor(12.7))

Kết quả:

12
12
12

Đối với các số dương, floor(x)trunc(x) trả về cùng một kết quả.

Python float to int floor a positive number png

Tuy nhiên, đối với các số âm, kết quả có thể khác nhau. Ví dụ:

Python float to int floor a negative number png

from math import floor, trunc

print(floor(-12.7))
print(trunc(-12.7))

Kết quả:

-13
-12

Python float to int floor vs trunc png

Làm tròn lên (Ceiling)

Hàm ceil(x) trả về số nguyên nhỏ nhất lớn hơn hoặc bằng x. Ví dụ:

from math import ceil

print(ceil(12.7))

Kết quả:

13

Ví dụ này sử dụng hàm ceil() cho các số âm:

Python float to int ceil a positive number png

from math import ceil

print(ceil(-12.7))

Kết quả:

-12

Python float to int ceil a negative number png

Kết bài

Chuyển đổi một số thực sang số nguyên luôn dẫn đến mất dữ liệu phần thập phân. Để thực hiện chuyển đổi này trong Python, bạn có thể sử dụng một số hàm có sẵn trong module math như trunc(), floor(), và ceil(). Hàm trunc() trả về phần nguyên của một số, loại bỏ hoàn toàn phần thập phân. Hàm floor() trả về số nguyên lớn nhất nhỏ hơn hoặc bằng một số, hữu ích khi bạn cần làm tròn xuống. Ngược lại, hàm ceil() trả về số nguyên nhỏ nhất lớn hơn hoặc bằng một số, hữu ích khi bạn cần làm tròn lên. Bằng cách hiểu rõ cách hoạt động của từng hàm này, bạn có thể lựa chọn phương pháp phù hợp nhất cho từng tình huống cụ thể trong quá trình lập trình.

Cùng chuyên mục:

Tài liệu tham khảo nhanh về Regex trong Python

Tài liệu tham khảo nhanh về Regex trong Python

Hàm Flags của Regex trong Python

Hàm Flags của Regex trong Python

Hàm split() của Regex trong Python

Hàm split() của Regex trong Python

Hàm finditer() của Regex trong Python

Hàm finditer() của Regex trong Python

Hàm fullmatch() của Regex trong Python

Hàm fullmatch() của Regex trong Python

Hàm match() của Regex trong Python

Hàm match() của Regex trong Python

Hàm sub() của Regex trong Python

Hàm sub() của Regex trong Python

Hàm search() trong Python Regex

Hàm search() trong Python Regex

Hàm findall() của regex trong Python

Hàm findall() của regex trong Python

Lookbehind trong Regex của Python

Lookbehind trong Regex của Python

Lookahead trong Python Regex

Lookahead trong Python Regex

Alternation Regex trong Python

Alternation Regex trong Python

Tìm hiểu Backreferences trong regex của Python

Tìm hiểu Backreferences trong regex của Python

Nhóm Non-capturing trong Regex Python

Nhóm Non-capturing trong Regex Python

Các nhóm Capturing trong regex của Python

Các nhóm Capturing trong regex của Python

Sets và Ranges trong Regex của Python

Sets và Ranges trong Regex của Python

Lượng từ non-greed trong Regex của Python

Lượng từ non-greed trong Regex của Python

Chế độ Greedy trong Regex Python

Chế độ Greedy trong Regex Python

Các lượng từ trong Regex của Python

Các lượng từ trong Regex của Python

Regex Word Boundary trong Python

Regex Word Boundary trong Python

Top