ROUND_HALF_UP Python
Tóm lược. trong hướng dẫn này, bạn sẽ tìm hiểu về mô-đun Python 4 hỗ trợ số học dấu phẩy động thập phân được làm tròn chính xác nhanh Giới thiệu về mô-đun thập phân PythonNhiều số thập phân không có biểu diễn chính xác ở dạng dấu phẩy động nhị phân, chẳng hạn như 0. 1. Khi sử dụng những con số này trong các phép tính số học, bạn sẽ nhận được một kết quả mà mình không ngờ tới. Ví dụ
đầu ra
kết quả là 0. 30000000000000004, không phải 0. 3 Để giải quyết vấn đề này, bạn sử dụng lớp 5 từ module 4 như sau
đầu ra
Đầu ra như mong đợi Mô-đun Python 4 hỗ trợ số học hoạt động giống như số học bạn học ở trường Không giống như số float, Python biểu thị chính xác số thập phân. Và tính chính xác chuyển sang số học. Ví dụ: biểu thức sau trả về chính xác 0. 0 ________số 8Bối cảnh thập phânSố thập phân luôn liên kết với ngữ cảnh kiểm soát các khía cạnh sau
Theo mặc định, bối cảnh là toàn cầu. Bối cảnh toàn cầu là bối cảnh mặc định. Ngoài ra, bạn có thể đặt bối cảnh tạm thời sẽ có hiệu lực cục bộ mà không ảnh hưởng đến bối cảnh chung Để lấy ngữ cảnh mặc định, bạn gọi hàm 8 từ mô-đun 4 1 Hàm 8 trả về ngữ cảnh mặc định, có thể là toàn cầu hoặc cục bộ Để tạo ngữ cảnh mới sao chép từ ngữ cảnh khác, bạn sử dụng hàm 1 4 1 trả về ngữ cảnh mới được sao chép từ ngữ cảnh 3 nếu được chỉ định Sau khi nhận được đối tượng ngữ cảnh, bạn có thể truy cập độ chính xác và làm tròn thông qua thuộc tính ________ 64 và ________ 65 tương ứng
Python cung cấp các cơ chế làm tròn sau Làm trònMô tảROUND_UPVòng ra xa số 0ROUND_DOWNVòng về số 0ROUND_CEILINGVòng tới trần nhà (về phía dương vô cùng)ROUND_FLOORvòng tới sàn (về phía âm vô cùng)ROUND_HALF_UPVòng tới gần nhất, cách xa số 0ROUND_HALF_DOWNvòng tới gần nhất, liền với số 0ROUND_HALF_EVENVòng tới gần nhất, liên kết với chẵn (chữ số có nghĩa nhỏ nhất)Ví dụ này minh họa cách lấy độ chính xác mặc định và làm tròn ngữ cảnh mặc định 2 đầu ra 3 Ví dụ sau đây cho thấy cơ chế làm tròn của 8 có hiệu lực như thế nào 5 đầu ra 0 Nếu bạn thay đổi cách làm tròn thành 0, bạn sẽ nhận được một kết quả khác 1 đầu ra 2 Ví dụ sau đây cho bạn thấy cách sao chép ngữ cảnh mặc định và thay đổi cách làm tròn thành 0 3 đầu ra 4 Lưu ý rằng bối cảnh cục bộ không ảnh hưởng đến bối cảnh toàn cầu. Sau khối with, Python sử dụng cơ chế làm tròn mặc định hàm tạo thập phânHàm tạo 5 cho phép bạn tạo một đối tượng 5 mới dựa trên một giá trị 5 Đối số 4 có thể là một số nguyên, chuỗi, tuple, float hoặc một đối tượng thập phân khác. Nếu bạn không cung cấp đối số giá trị, nó sẽ mặc định là 5 Nếu giá trị là một bộ, thì nó phải có ba thành phần. một dấu (0 cho số dương hoặc 1 cho số âm), một bộ chữ số và một số mũ nguyên 6 Ví dụ 7 Tuple có ba phần tử như sau
Do đó, bạn sẽ cần chuyển bộ dữ liệu sau cho hàm tạo 5 8 đầu ra 9 Lưu ý rằng độ chính xác của ngữ cảnh thập phân chỉ ảnh hưởng đến phép toán số học, không ảnh hưởng đến hàm tạo 5. Ví dụ 0 Khi bạn sử dụng số float không có biểu diễn float nhị phân chính xác, hàm tạo 5 không thể tạo biểu diễn thập phân chính xác. Ví dụ 1 đầu ra 2 Trong thực tế, bạn sẽ sử dụng một chuỗi hoặc một bộ để tạo một 5 Phép toán số thập phânMột số toán tử số học không hoạt động giống như số float hoặc số nguyên, chẳng hạn như div ( 10) và mod ( 11 Đối với số thập phân, toán tử 10 thực hiện phép chia cụt 3 Lớp 5 cung cấp một số phép toán như 14 và 15. Tuy nhiên, nó không có tất cả các chức năng được định nghĩa trong mô-đun 16 Khi bạn sử dụng các hàm từ mô-đun 16 cho các số thập phân, Python sẽ chuyển các đối tượng 5 thành số float trước khi thực hiện các phép tính số học. Điều này dẫn đến mất độ chính xác được xây dựng trong các đối tượng thập phân Tại sao Python vòng 2. 5 đến 2?Ví dụ: 2. 5 sẽ được làm tròn thành 2, vì 2 là số chẵn gần nhất và 3. 5 sẽ được làm tròn thành 4.
Hàm int có làm tròn lên hoặc xuống Python không?int làm tròn về 0 . Đối với x dương, nó giống như sàn, đối với x âm, nó giống như trần nhà. vòng tròn đến giải pháp gần nhất có thể. vòng 1. 49)=1 và làm tròn (1. 51)==2. Khi x nằm chính giữa hai số thì round(x) sẽ là số chẵn gần nhất. |