Làm thế nào để bạn làm tròn 2 sf trong python?

Python có một số tùy chọn để làm tròn thành một số nguyên. Nhưng nếu chúng ta muốn làm tròn đến một số chữ số thập phân, chẳng hạn như 2 chữ số thập phân thì sao?

TRONG BÀI VIẾT NÀY

  • Làm tròn các giá trị Python đến hai chữ số thập phân (và hơn thế nữa)
  • Làm tròn số thập phân lên và xuống.
    Value:          Rounded:
    3.14159265359   3.14159
    1845.7409947    1845.741
    -100.95         -100.95
    9.5432          9.54
    34.49953        34.5
    
    5
    • Thí dụ. làm tròn chữ số thập phân lên và xuống
  • Làm tròn số thập phân lên trong Python
    • Thí dụ. làm tròn đến 2 chữ số thập phân
  • Làm tròn số thập phân xuống trong Python
    • Thí dụ. làm tròn đến 2 chữ số thập phân
  • Làm tròn số thập phân của danh sách và mảng Python
    • Làm tròn danh sách đến vị trí thập phân với khả năng hiểu danh sách
    • Làm tròn danh sách đến vị trí thập phân với vòng lặp
      Value:          Rounded:
      3.14159265359   3.14159
      1845.7409947    1845.741
      -100.95         -100.95
      9.5432          9.54
      34.49953        34.5
      
      6 của Python
    • Làm tròn mảng Python đến 2 chữ số thập phân
    • Làm tròn mảng NumPy đến hai chữ số thập phân
  • Bản tóm tắt

# Làm tròn giá trị Python đến hai chữ số thập phân (và hơn thế nữa)

Mặc dù việc làm tròn thành một số nguyên rất hữu ích nhưng vẫn có nhiều trường hợp chúng ta cần làm tròn tới một số chữ số thập phân nhất định. Ví dụ: tiền tệ được báo cáo tốt nhất với 2 chữ số thập phân. Và mức độ lỗi và ý nghĩa thường sử dụng nhiều chữ số hơn, như 5

Python có một số cách để làm tròn chữ số thập phân

  • Hàm
    Value:          Rounded:
    3.14159265359   3.14159
    1845.7409947    1845.741
    -100.95         -100.95
    9.5432          9.54
    34.49953        34.5
    
    5 làm tròn số thập phân lên và xuống. Điều này làm cho
    Value:          Rounded:
    3.14159265359   3.14159
    1845.7409947    1845.741
    -100.95         -100.95
    9.5432          9.54
    34.49953        34.5
    
    8 thành
    Value:          Rounded:
    3.14159265359   3.14159
    1845.7409947    1845.741
    -100.95         -100.95
    9.5432          9.54
    34.49953        34.5
    
    9 và
    round_decimals_up(8.343)
    # Returns: 8.35
    
    0 thành
    round_decimals_up(8.343)
    # Returns: 8.35
    
    1
  • Để làm tròn số thập phân lên, chúng ta phải sử dụng hàm tùy chỉnh. Bằng cách đó,
    round_decimals_up(8.343)
    # Returns: 8.35
    
    2 trở thành
    round_decimals_up(8.343)
    # Returns: 8.35
    
    3
  • Để làm tròn số thập phân xuống, chúng tôi sử dụng hàm tùy chỉnh. Điều đó biến
    round_decimals_up(8.343)
    # Returns: 8.35
    
    4 thành
    round_decimals_up(8.343)
    # Returns: 8.35
    
    5

Hãy xem xét từng cách tiếp cận và mã Python mà chúng yêu cầu

# Làm tròn số thập phân lên và xuống. Value: Rounded: 3.14159265359 3.14159 1845.7409947 1845.741 -100.95 -100.95 9.5432 9.54 34.49953 34.5 5

Với hàm

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
5 của Python, chúng ta có thể làm tròn số thập phân lên và xuống. Hàm cần hai đối số cho điều đó. Đầu tiên là giá trị để làm tròn. Thứ hai là số chữ số sau dấu thập phân (
round_decimals_up(8.343)
# Returns: 8.35
8) để làm tròn thành (Lutz, 2013; Sweigart, 2015)

Vì vậy, để làm tròn đến 2 chữ số thập phân, chúng tôi làm

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
4

# Thí dụ. làm tròn chữ số thập phân lên và xuống

Để xem cách hoạt động của

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
5 trong thực tế, hãy cùng khám phá chương trình nhỏ sau

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
6

Mã này trước tiên tạo năm biến dấu phẩy động. Mỗi cái có một vài số sau dấu thập phân (

round_decimals_up(8.343)
# Returns: 8.35
8). Chúng tôi lưu trữ các giá trị của chúng trong các biến
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
81 đến
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
82

Sau đó, chúng tôi làm tròn từng số đến một số chữ số thập phân. Chúng tôi gọi hàm

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
5 với hai đối số. Đầu tiên là biến chúng ta vừa thực hiện. Thứ hai số thập phân để làm tròn đến. Ở đây chúng tôi sử dụng các giá trị
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
84 đến
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
85 cho điều đó. Chúng tôi lưu trữ các giá trị được làm tròn trong các biến mới (
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
86 đến
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
87)

Sau đó, hàm

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
88 của Python hiển thị cả giá trị gốc và giá trị được làm tròn. Với phương thức chuỗi
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
89, chúng tôi căn chỉnh giá trị ban đầu sang trái. Điều đó tạo ra một đầu ra giống như bảng đẹp. Như chúng ta có thể thấy từ đầu ra, mỗi giá trị được làm tròn chính xác

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5

ĐỌC THÊM

  • Làm tròn các giá trị Python thành một số nguyên với
    Value:          Rounded:
    3.14159265359   3.14159
    1845.7409947    1845.741
    -100.95         -100.95
    9.5432          9.54
    34.49953        34.5
    
    5

# Làm tròn số thập phân lên trong Python

Một tùy chọn khác là luôn làm tròn các chữ số thập phân của một số lên. Đó là ví dụ những gì các công ty làm. thay vì làm tròn giá lên hoặc xuống, các giá trị như

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
91 luôn được làm tròn lên đến $4. 55

Tuy nhiên, Python không có chức năng tích hợp cho điều đó. Nhưng chúng ta có thể tự tạo và tận dụng hàm

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
92. Khi chúng tôi làm như vậy, sử dụng chức năng trông như thế này

round_decimals_up(8.343)
# Returns: 8.35

Đây là cách chúng tôi viết mã hàm

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
93 đó

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
8

Hàm này có hai tham số. giá trị cần làm tròn (

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
94) và số chữ số thập phân cần nhận (
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
95). Khi tham số thứ hai đó không được đặt, nó sẽ mặc định là
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
96

Mã của chức năng có hai phần. Đầu tiên xác nhận và xử lý tham số

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
95. Thứ hai thực hiện làm tròn thực tế

Để xác thực điều đó, chúng tôi sử dụng câu lệnh if xếp tầng của Python. Điều kiện đầu tiên có

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
98 xem tham số
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
95 có phải là số khác không phải là số nguyên (
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
00). Khi đúng như vậy, chúng tôi tạo một
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
01 để thông báo cho người dùng rằng chức năng này được sử dụng sai cách

Tiếp theo, chúng tôi kiểm tra xem

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
95 có dưới (
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
03) không. Vì hàm không biết cách xử lý các vị trí thập phân âm, nên chúng tôi kích hoạt một
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
04 để thông báo điều này với người dùng của hàm

Bài kiểm tra

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
05 cuối cùng xem tham số
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
95 có bằng (
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
07)
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
08 không. Khi hàm phải làm tròn một giá trị không có chữ số thập phân, chúng ta chỉ cần thực thi hàm
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
92 và làm tròn thành một số nguyên

Sau đó, chúng ta đến phần thứ hai của chức năng. Đây là nơi chúng tôi làm tròn thực tế đến vị trí thập phân. Nhưng trước tiên chúng ta xác định hệ số hiệu chỉnh. Để có được giá trị đó, chúng tôi tăng

round_decimals_up(8.343)
# Returns: 8.35
00 thành sức mạnh của tham số
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
95. Chúng tôi lưu trữ kết quả trong biến
round_decimals_up(8.343)
# Returns: 8.35
02

Tiếp theo chúng ta gọi hàm

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
92. Bên trong dấu ngoặc đơn, chúng tôi chỉ định giá trị làm tròn lên (
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
94) nhân với
round_decimals_up(8.343)
# Returns: 8.35
02. Sau đó, chúng tôi chia kết quả làm tròn cho
round_decimals_up(8.343)
# Returns: 8.35
02 để lấy lại số vị trí thập phân thích hợp

Giả sử hàm phải làm tròn

round_decimals_up(8.343)
# Returns: 8.35
07 đến 2 chữ số thập phân. Sau đó, mã đầu tiên bội số của ________ 507 với ________ 509 (102).
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
92 sau đó làm tròn
round_decimals_up(8.343)
# Returns: 8.35
11 lên đến một số nguyên (
round_decimals_up(8.343)
# Returns: 8.35
12). Cuối cùng ta chia lại cho
round_decimals_up(8.343)
# Returns: 8.35
09 được kết quả là hai chữ số thập phân.
round_decimals_up(8.343)
# Returns: 8.35
14

# Thí dụ. làm tròn đến 2 chữ số thập phân

Để xem cách tương tác với hàm

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
93 tùy chỉnh đó diễn ra như thế nào, hãy sử dụng nó trong một chương trình nhỏ

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
9

Chương trình này trước tiên nhập mô-đun

round_decimals_up(8.343)
# Returns: 8.35
16. Điều đó làm cho chức năng
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
92 có sẵn cho chức năng tùy chỉnh của chúng tôi, mà chúng tôi sao chép/dán vào chương trình tiếp theo

Sau đó, chúng tôi thực hiện năm biến (

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
81 đến
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
82). Mỗi cái có một giá trị dấu phẩy động với một vài chữ số thập phân. Hãy làm tròn giá trị của chúng

Vì điều đó, chúng tôi gọi hàm

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
93 nhiều lần. Chúng tôi cung cấp cho nó một đối số. giá trị để làm tròn. Sau đó, hàm sẽ tự động sử dụng hai chữ số thập phân để làm tròn. Chúng tôi đặt các giá trị được làm tròn trong các biến
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
86 đến
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
87

Hàm

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
88 sau đó xuất giá trị ban đầu và được làm tròn. Đây là cách hàm làm tròn mọi biến đến hai chữ số thập phân

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
0

# Làm tròn số thập phân xuống trong Python

Cách thứ ba để xử lý các chữ số thập phân là luôn làm tròn xuống. Đây là những gì một giáo viên nghiêm khắc có thể sử dụng. thay vì làm tròn

round_decimals_up(8.343)
# Returns: 8.35
64 và
round_decimals_up(8.343)
# Returns: 8.35
65 lên, người đó làm tròn xuống thành
round_decimals_up(8.343)
# Returns: 8.35
66 và
round_decimals_up(8.343)
# Returns: 8.35
67

Không có chức năng tích hợp sẵn nào trong Python cho kiểu làm tròn đó. Nhưng chúng ta có thể tự xây dựng và tận dụng hàm

round_decimals_up(8.343)
# Returns: 8.35
68. Sử dụng một chức năng tùy chỉnh như vậy trông giống như

round_decimals_up(8.343)
# Returns: 8.35
0

Điều đó hoạt động tốt. Bây giờ hãy viết mã chức năng tùy chỉnh đó

round_decimals_up(8.343)
# Returns: 8.35
1

Phần lớn chức năng này giống với chức năng tùy chỉnh khác (

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
93) mà chúng ta đã thảo luận trước đó

Sự khác biệt chính là bây giờ chúng ta sử dụng chức năng

round_decimals_up(8.343)
# Returns: 8.35
68. Hàm này làm tròn tham số
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
94 nhân với biến
round_decimals_up(8.343)
# Returns: 8.35
02 xuống. Sau đó, chúng tôi chia lại với
round_decimals_up(8.343)
# Returns: 8.35
02 để có đúng số chữ số thập phân

Giả sử chúng ta yêu cầu hàm làm tròn

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
604 xuống 2 chữ số thập phân. Sau đó, mã đầu tiên nhân giá trị đó với
round_decimals_up(8.343)
# Returns: 8.35
09.
round_decimals_up(8.343)
# Returns: 8.35
68 sau đó làm tròn
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
607 xuống một số nguyên (
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
608). Khi chúng tôi chia lại cho
round_decimals_up(8.343)
# Returns: 8.35
09, chúng tôi nhận được số chữ số thập phân thích hợp.
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
610

# Thí dụ. làm tròn đến 2 chữ số thập phân

Hãy xem chức năng trên hoạt động như thế nào trong thực tế. Chương trình nhỏ này có chức năng làm tròn xuống 5 giá trị khác nhau

round_decimals_up(8.343)
# Returns: 8.35
6

Trước tiên, chúng tôi nhập mô-đun

round_decimals_up(8.343)
# Returns: 8.35
16. Bằng cách đó, hàm
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
612 tùy chỉnh có thể sử dụng
round_decimals_up(8.343)
# Returns: 8.35
68. Sau đó chúng tôi chèn chức năng tùy chỉnh đó

Sau đó, chúng tôi thực hiện năm biến (

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
81 đến
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
82). Mỗi người giữ một giá trị với số thập phân để làm tròn xuống. Làm tròn đó là những gì chúng ta làm tiếp theo

Vì vậy, chúng tôi liên tục thực hiện

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
612. Mỗi lần chúng ta cung cấp cho hàm hai đối số. giá trị cần làm tròn và số chữ số thập phân cần giữ. Chúng tôi đưa kết quả vào các biến mới (
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
86 đến
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
87)

Đoạn mã cuối cùng đưa ra kết quả với hàm

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
88. Chúng tôi căn trái giá trị ban đầu bằng phương pháp
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
89 và bao gồm cả giá trị được làm tròn. Khi đầu ra hiển thị, mỗi giá trị được làm tròn xuống một số vị trí thập phân nhất định

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
60

ĐỌC THÊM

  • Làm tròn các giá trị Python thành một số nguyên

# Làm tròn số thập phân của danh sách và mảng Python

Các ví dụ trên luôn làm tròn một giá trị tại một thời điểm. Tuy nhiên, đôi khi chúng ta có một dãy có các giá trị mà chúng ta muốn làm tròn thành một số chữ số thập phân. Hãy xem cách thực hiện trong Python

# Làm tròn danh sách đến vị trí thập phân với khả năng hiểu danh sách

Một tùy chọn là làm tròn mọi giá trị bằng cách hiểu danh sách. Điều này chỉ cần một chút mã và chạy hiệu quả. Khả năng hiểu danh sách hoạt động tốt nhất khi mã của bạn không quá phức tạp. Các giá trị làm tròn đơn giản đáp ứng dấu đó

Đây là một ví dụ nhanh

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
61

Danh sách

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
621 mà chúng tôi tạo ở đây nhận các giá trị của nó từ cách hiểu danh sách. Sự hiểu biết đó thực thi biểu thức
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
622 cho mọi giá trị được tạo bởi vòng lặp
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
6 nội tuyến.
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
624. Đó là cách chúng tôi duyệt qua danh sách
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
625 ban đầu, từng phần tử một

Đây là một chương trình nhỏ làm tròn mọi giá trị trong danh sách

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
62

Trước tiên, chúng tôi nhập mô-đun

round_decimals_up(8.343)
# Returns: 8.35
16. Sau đó, chúng tôi chèn các hàm
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
612 và
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
93 mà chúng tôi đã thực hiện trước đó trong bài viết này

Tiếp theo, chúng tôi tạo một danh sách với các số. Danh sách

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
625 đó có 6 giá trị dấu phẩy động. Sau đó, chúng tôi làm tròn từng giá trị trong danh sách đó. Chúng tôi sử dụng ba cách hiểu danh sách khác nhau cho điều đó

Vòng đầu tiên làm tròn mọi giá trị danh sách đến hai chữ số thập phân (lên và xuống) bằng hàm

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
5. Chúng tôi đặt các giá trị được làm tròn đó vào một danh sách mới,
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
631

Cách hiểu danh sách thứ hai có hàm

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
93 làm tròn đến hai chữ số thập phân. Danh sách mới mà điều này trả về là những gì chúng tôi lưu trữ trong
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
633. Mức độ hiểu danh sách thứ ba và cuối cùng làm tròn xuống hai chữ số thập phân (
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
612). Kết quả của sự hiểu biết đó được lưu trữ trong danh sách
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
635

Đoạn mã cuối cùng của chương trình xuất ra cả bốn danh sách với hàm

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
88. Đây là cách các giá trị được làm tròn đó trông như thế nào

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
63

Trong ví dụ trên, chúng tôi đã tạo danh sách mới với khả năng hiểu danh sách. Nếu bạn không cần giữ các giá trị danh sách ban đầu, thì khả năng hiểu danh sách cũng có thể ghi đè lên danh sách hiện có. Để làm như vậy, chúng tôi đặt giá trị của danh sách thành kết quả của việc hiểu danh sách

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
64

TÌM HIỂU THÊM

  • Làm tròn các giá trị Python thành một số nguyên (số nguyên)

# Làm tròn danh sách đến vị trí thập phân với vòng lặp Value: Rounded: 3.14159265359 3.14159 1845.7409947 1845.741 -100.95 -100.95 9.5432 9.54 34.49953 34.5 6 của Python

Cách thứ hai để làm tròn giá trị danh sách là dùng vòng lặp

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
6. Điều này đòi hỏi nhiều mã hơn một chút so với khả năng hiểu danh sách, nhưng có nhiều khả năng hơn và dễ đọc hơn trong các tình huống phức tạp

Như một ví dụ nhanh

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
65

Danh sách

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
639 chúng tôi tạo ở đây bắt đầu trống (
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
640). Nhưng bên trong vòng lặp
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
6, chúng tôi điền vào danh sách đó các giá trị. Đối với điều đó, chúng tôi gọi phương thức
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
642 trong danh sách và chuyển vào giá trị được làm tròn từ danh sách ban đầu (
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
622)

Chương trình nhỏ này làm tròn các giá trị danh sách với

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
6

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
66

Trước tiên, chúng tôi nhập lại mô-đun

round_decimals_up(8.343)
# Returns: 8.35
16. Sau đó, chúng tôi sao chép/dán các hàm
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
612 và
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
93 mà chúng tôi đã thực hiện trước đó trong bài viết này

Sau đó, chúng tôi tạo một danh sách với một số giá trị dấu phẩy động, cả dương và âm. Sau đó, chúng tôi mã hóa ba danh sách trống (

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
640).
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
631,
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
633 và
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
635. Chúng sẽ giữ các giá trị được làm tròn

Để thực hiện điều đó, chúng tôi tạo một vòng lặp

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
6. Vòng lặp này lặp qua mọi giá trị trong danh sách
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
625. Trong mỗi chu kỳ vòng lặp, giá trị danh sách hiện tại được truy cập bằng biến vòng lặp
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
654. Bên trong vòng lặp đó, chúng tôi nối thêm một giá trị được làm tròn vào từng danh sách trong số ba danh sách bằng phương thức
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
642 của Python

Đoạn mã cuối cùng của chương trình sau đó xuất ra danh sách ban đầu và các dẫn xuất được làm tròn của nó. Đây là những gì hiển thị

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
67

Không cần các giá trị danh sách ban đầu? . Thay vào đó, bạn có thể ghi đè lên cái hiện có tại chỗ. Một chức năng hữu ích cho điều đó là Python's

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
656. Ví dụ

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
68

# Làm tròn mảng Python đến 2 chữ số thập phân

Tất nhiên chúng ta cũng có thể làm tròn các tập hợp khác ngoài danh sách. Đây là cách chúng tôi làm tròn mọi giá trị trong một mảng Python đến 2 chữ số thập phân

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
69

Trước tiên, chúng tôi nhập hàm tạo

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
657 từ mô-đun
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
658. Sau đó, chúng tôi tạo một mảng với các giá trị dấu phẩy động. Chúng tôi đặt tên cho mảng đó là
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
625

Sau đó, chúng tôi xây dựng một mảng thứ hai. Cái này có các giá trị từ mảng ban đầu được làm tròn đến 2 chữ số thập phân. Để thực hiện điều đó, chúng tôi sử dụng cách hiểu danh sách. Làm tròn mỗi giá trị thành hai chữ số thập phân (

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
622). Chúng tôi đặt tên cho mảng mới, được làm tròn đó là
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
621

Hàm

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
88 sau đó xuất ra mảng ban đầu và được làm tròn. Như chúng ta có thể biết, mỗi giá trị được làm tròn đúng đến hai chữ số thập phân

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
0

Bạn không cần giữ các giá trị mảng ban đầu? . Đây là cách

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
1

# Làm tròn mảng NumPy đến hai chữ số thập phân

Tất nhiên chúng ta cũng có thể làm tròn giá trị của các mảng khác. Một ví dụ là những thứ từ gói lập trình số NumPy cho Python. Để làm tròn một mảng NumPy đến hai chữ số thập phân, chúng tôi làm

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
2

Trước tiên, chúng tôi nhập mô-đun

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
663. Sau đó, chúng tôi tạo một mảng NumPy với hàm
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
664. Mảng đó có một số giá trị dấu phẩy động

Sau đó, chúng tôi làm tròn mảng ban đầu thành hai chữ số thập phân. Đối với điều đó, chúng tôi gọi hàm

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
665 với hai đối số. Đầu tiên là mảng có giá trị để làm tròn. Thứ hai là số chữ số thập phân để làm tròn thành. Chúng tôi lưu trữ mảng mà hàm trả về trong biến
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
621

Đoạn mã cuối cùng xuất ra cả mảng ban đầu và mảng được làm tròn. Điều đó cho thấy cách các giá trị được làm tròn độc đáo đến 2 chữ số thập phân

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
3

Hàm

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
665 làm tròn lên và xuống. Để luôn làm tròn lên hoặc luôn làm tròn xuống, chúng ta phải sử dụng các hàm tùy chỉnh
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
93 và
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
612

Khi chúng ta sử dụng các hàm đó để hiểu danh sách, chúng có thể làm tròn từng giá trị từ một mảng NumPy. Ví dụ

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
4

ĐỌC THÊM

  • Làm tròn các giá trị Python thành một số nguyên
  • Cắt bớt các giá trị Python thành một số nguyên
  • Cắt ngắn đến một số vị trí thập phân nhất định trong Python

# Bản tóm tắt

Có ba cách làm tròn số đến một số chữ số thập phân nhất định. Để làm tròn lên và xuống, chúng tôi sử dụng hàm

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
5 của Python. Đối số đầu tiên chúng ta đưa ra cho hàm đó là số cần làm tròn. Đối số thứ hai số vị trí thập phân để làm tròn thành

Python không có chức năng luôn làm tròn các chữ số thập phân lên (______1671 thành

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
672). Nhưng khi chúng ta tận dụng hàm
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
92 trong một hàm tùy chỉnh, chúng ta có thể dễ dàng tự thực hiện điều đó

Không có hàm nào luôn làm tròn các chữ số thập phân xuống (

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
674 trở thành
Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
675). Nhưng khi chúng ta bọc hàm
round_decimals_up(8.343)
# Returns: 8.35
68 trong một hàm tùy chỉnh, chúng ta có thể tự tạo hành vi đó

Để làm tròn mọi giá trị trong danh sách hoặc mảng, chúng ta có thể sử dụng vòng lặp hiểu danh sách hoặc vòng lặp

Value:          Rounded:
3.14159265359   3.14159
1845.7409947    1845.741
-100.95         -100.95
9.5432          9.54
34.49953        34.5
6. Cái đầu tiên nhỏ gọn và cái thứ hai dễ làm việc hơn

Người giới thiệu

Lutz, M. (2013). Học Python (Phiên bản thứ 5). Sebastopol, CA. Truyền thông O'Reilly

Sweigart, A. (2015). Tự động hóa những thứ nhàm chán với Python. Lập trình thực tế cho người mới bắt đầu. San Francisco, CA. Không ép tinh bột

con trăn. tổ chức (n. d. ). Chức năng tích hợp sẵn. Truy cập ngày 8 tháng 11 năm 2019, từ https. // tài liệu. con trăn. org/3/thư viện/chức năng. html

Cập nhật lần cuối vào ngày 9 tháng 9 năm 2020 (xuất bản ngày 20 tháng 12 năm 2019)

# Hướng dẫn Python liên quan

  • Giá trị tuyệt đối của các giá trị Python không phổ biến. nhị phân, bát phân, vô cực, v.v.

    Value:          Rounded:
    3.14159265359   3.14159
    1845.7409947    1845.741
    -100.95         -100.95
    9.5432          9.54
    34.49953        34.5
    
    678 của Python trả về các giá trị tuyệt đối, cũng cho các cơ số khác với 10 (nhị phân, bát phân, thập lục phân). Đối với các số phức, nó cho độ lớn

  • Làm cách nào để bình phương một số trong Python?

    Số bình phương là số nhân với chính nó. Trong Python

    Value:          Rounded:
    3.14159265359   3.14159
    1845.7409947    1845.741
    -100.95         -100.95
    9.5432          9.54
    34.49953        34.5
    
    679 và
    Value:          Rounded:
    3.14159265359   3.14159
    1845.7409947    1845.741
    -100.95         -100.95
    9.5432          9.54
    34.49953        34.5
    
    680 bình phương bằng cách nâng lên lũy thừa 2, trong khi
    Value:          Rounded:
    3.14159265359   3.14159
    1845.7409947    1845.741
    -100.95         -100.95
    9.5432          9.54
    34.49953        34.5
    
    681 có thể nhân một giá trị với chính nó

  • Nâng số lên thành lũy thừa. đây là cách lũy thừa trong Python

    Một số mũ nhân một số với chính nó một số lần. Python có ba cách để nâng một số lên một lũy thừa nhất định.

    Value:          Rounded:
    3.14159265359   3.14159
    1845.7409947    1845.741
    -100.95         -100.95
    9.5432          9.54
    34.49953        34.5
    
    679,
    Value:          Rounded:
    3.14159265359   3.14159
    1845.7409947    1845.741
    -100.95         -100.95
    9.5432          9.54
    34.49953        34.5
    
    680 và
    Value:          Rounded:
    3.14159265359   3.14159
    1845.7409947    1845.741
    -100.95         -100.95
    9.5432          9.54
    34.49953        34.5
    
    684

  • Làm cách nào để kiểm tra xem một số có phải là một khối hoàn hảo trong Python không?

    Lập phương hoàn hảo là một số mà khi nhân với chính nó hai lần sẽ trả về một số nguyên. Bài viết này sử dụng mã Python để tìm những hình khối hoàn hảo đó

  • Làm cách nào để cắt bớt số thành một số vị trí thập phân trong Python?

    Khi chúng ta cắt bớt một số, chúng ta bỏ đi giá trị phân số của nó. Nhưng với một chức năng tùy chỉnh, Python cũng có thể cắt bớt đến một số vị trí thập phân nhất định