Hướng dẫn how to reduce decimal places in python - cách giảm chữ số thập phân trong python

Python có một số tùy chọn để làm tròn đến một số toàn bộ. Nhưng điều gì sẽ xảy ra nếu chúng ta muốn làm tròn đến một số chữ số thập phân, như 2 chữ số thập phân? Hãy để xem cách chúng ta làm điều đó.

Trong bài viết này:

  • Giá trị python tròn cho hai vị trí số thập phân [và hơn thế nữa]
  • Vòng thập phân tròn lê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
    
    5
    • Ví dụ: Các chữ số thập phân tròn lên xuống
  • Vòng thập phân ở Python
    • Ví dụ: Làm tròn đến 2 chữ số thập phân
  • Vòng thập phân tròn xuống ở Python
    • Ví dụ: Làm tròn xuống 2 chữ số thập phân
  • Vòng thập phân của danh sách và mảng
    • Danh sách các vòng đến các vị trí thập phân với danh sách hiểu biết
    • Danh sách tròn đến các vị trí thập phân với vòng lặp Python
    • Mảng Python tròn đến 2 chữ số thập phân
    • Vòng numpy mảng đến hai chữ số thập phân
  • Bản tóm tắt

# Vòng Python giá trị đến hai vị trí số thập phân [và hơn thế nữa]

Mặc dù làm tròn vào một số toàn bộ là hữu ích, nhưng vẫn có rất nhiều tình huống mà chúng ta cần phải làm tròn đến một số vị trí 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 để các chữ số thập phân trò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 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 các vị trí thập phân, chúng ta phải sử dụng một chức năng tùy chỉnh. Theo 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 các vị trí thập phân xuống, chúng tôi sử dụng một chức năng 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 cùng xem xét từng cách tiếp cận và mã Python mà họ yêu cầu.

# Vòng thập phân vị trí lê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
5

Với chức năng Python từ

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 ta có thể làm tròn các vị trí thập phân lên xuống. Các chức năng 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 đến [Lutz, 2013; Sweigart, 2015].

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

round[12.54673, 2]
# Returns: 12.55

# Ví dụ: Các chữ số thập phân tròn lên xuống

Để xem cách thức hoạt động

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 để khám phá chương trình nhỏ sau:

# Some numerical values
valueA = 3.14159265359
valueB = 1845.7409947
valueC = -100.95
valueD = 9.5432
valueE = 34.49953

# Round to different decimal places
roundA = round[valueA, 5]
roundB = round[valueB, 4]
roundC = round[valueC, 3]
roundD = round[valueD, 2]
roundE = round[valueE, 1]

# Output rounded values
print["Value:".ljust[15], "Rounded:"]

print[str[valueA].ljust[15], roundA]
print[str[valueB].ljust[15], roundB]
print[str[valueC].ljust[15], roundC]
print[str[valueD].ljust[15], roundD]
print[str[valueE].ljust[15], roundE]

Mã này đầu tiên làm cho năm biến dấu phẩy động. Mỗi số có một số số sau điểm 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
import math


def round_decimals_up[number:float, decimals:int=2]:
    """
    Returns a value rounded up to a specific number of decimal places.
    """
    if not isinstance[decimals, int]:
        raise TypeError["decimal places must be an integer"]
    elif decimals int removes all decimals from a number.

Bài Viết Liên Quan

Chủ Đề