Trăn tròn ()

Hàm round () trả về một số dấu phẩy động được làm tròn đến số thập phân được chỉ định.

Cú pháp của round()hàm là:

 vòng (số, ndigits)

round () Tham số

Các round()chức năng có hai tham số:

  • số - số được làm tròn
  • ndigits (tùy chọn) - số mà số đã cho được làm tròn; mặc định là 0

Giá trị trả về từ vòng ()

  • Nếu ndigitskhông được cung cấp, round()trả về số nguyên gần nhất với số đã cho.
  • Nếu ndigitsđược cung cấp, round()trả về số được làm tròn đến các ndigitschữ số.

Ví dụ 1: Round () hoạt động như thế nào trong Python?

 # for integers print(round(10)) # for floating point print(round(10.7)) # even choice print(round(5.5))

Đầu ra

 10 11 6

Ví dụ 2: Làm tròn một số đến số chữ số thập phân đã cho

 print(round(2.665, 2)) print(round(2.675, 2))

Đầu ra

 2,67 2,67

Lưu ý : Hành vi của round()phao nổi có thể gây ngạc nhiên. Thông báo round(2.675, 2)đưa ra 2.67thay vì mong đợi 2.68. Đây không phải là một lỗi: đó là kết quả của thực tế là hầu hết các phân số thập phân không thể được biểu diễn chính xác dưới dạng số thực.

Khi số thập phân 2.675được chuyển đổi thành số dấu phẩy động nhị phân, nó lại được thay thế bằng một số xấp xỉ nhị phân, có giá trị chính xác là:

 2.67499999999999982236431605997495353221893310546875

Do đó, nó được làm tròn xuống 2,67.

Nếu bạn đang ở trong tình huống cần độ chính xác này, hãy xem xét sử dụng decimalmô-đun, được thiết kế cho số học dấu phẩy động:

 from decimal import Decimal # normal float num = 2.675 print(round(num, 2)) # using decimal.Decimal (passed float as string for precision) num = Decimal('2.675') print(round(num, 2))

Đầu ra

 2,67 2,68

thú vị bài viết...