Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Cách làm tròn số trong Python?


Python có hàm built-in round() để làm tròn số.

Hàm round() trong Python nhận hai tham số:

  • Tham số đầu: số cần làm tròn.
  • Tham số hai: số chữ số thập phân cần làm tròn đến.

Tham số thứ hai là tùy chọn (optional).

Nếu không chỉ định tham số hai, round() trả về số nguyên dùng floor() và ceil(). Nó xem chữ số sau dấu thập phân.

  • Nếu chữ số sau dấu thập phân < 5, trả về floor() của số.
  • Nếu chữ số sau dấu thập phân > 5, trả về ceil() của số.
  • Nếu truyền số nguyên, trả về chính số đó.

Sẽ rõ hơn qua triển khai dưới đây:

Hàm round() khi thiếu tham số thứ hai

Số cần làm tròn truyền cho round(). Đầu ra lúc này luôn là số nguyên.

Ví dụ

print(round(15))
print(round(15.2))
print(round(15.8))
print(round(15.128))
print(round(15.89))

Kết quả

15
15
16
15
16

Giải thích

  • Truyền số nguyên 15, trả về 15.
  • 15.2: chữ số sau thập phân < 5 → floor(15.2) = 15.
  • 15.8: chữ số sau thập phân > 5 → ceil(15.8) = 16.
  • 15.128: phần thập phân < 0.5 → floor = 15.
  • 15.89: phần thập phân > 0.5 → ceil = 16.

Lưu ý: Tất cả đầu ra đều là số nguyên.

Hàm round() khi có tham số thứ hai

Tham số hai cho số chữ số thập phân cần làm tròn.

Ví dụ

print(round(15, 2))
print(round(15.2789, 3))
print(round(15.82, 1))
print(round(15.128, 2))
print(round(15.8902, 2))

Kết quả

15
15.279
15.8
15.13
15.89

Cách hoạt động của round() lúc này giống như làm tròn số học thông thường.

Trường hợp số nguyên, trả về chính số nguyên. Ngược lại, trả về số thực làm tròn đến số chữ số chỉ định.

Giải thích

  • Số 15.2789, làm tròn 3 chữ số. Chữ số thứ 4 sau thập phân > 5, nên chữ số thứ 3 (cuối cùng chỉ định) tăng 1. Kết quả 15.279.
  • Số 15.82, làm tròn 1 chữ số. Chữ số thứ 2 < 5, nên chữ số thứ 1 không tăng. Kết quả 15.8.