Hướng dẫn how do you round up a value in python? - làm thế nào để bạn làm tròn một giá trị trong python?

Đối với những người không muốn sử dụng nhập khẩu.

Đối với một danh sách nhất định hoặc bất kỳ số nào:

x = [2, 2.1, 2.5, 3, 3.1, 3.5, 2.499,2.4999999999, 3.4999999,3.99999999999]

Trước tiên, bạn phải đánh giá xem số có bằng số nguyên của nó không, luôn làm tròn. Nếu kết quả là đúng, bạn trả về số, nếu không, hãy trả về số nguyên (số) + 1.

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]

Logic toán học:

  • Nếu số có phần thập phân: round_up - round_down == 1, luôn luôn.
  • Nếu số không có phần thập phân: round_up - round_down == 0.

So:

  • round_up == x + round_down

With:

  • x == 1 nếu số! = Round_down
  • x == 0 nếu số == vòng_down

Bạn đang cắt số trong 2 phần, số nguyên và thập phân. Nếu số thập phân không phải là 0, bạn thêm 1.

Tái bút: Tôi đã giải thích điều này chi tiết vì một số ý kiến ​​ở trên đã yêu cầu điều đó và tôi vẫn còn NOOB ở đây, vì vậy tôi không thể bình luận.

Khi chương trình Python của chúng tôi hoạt động với các giá trị số, thường thì chúng tôi có các giá trị lượt với thành phần phân số thành các số toàn bộ (số nguyên). Nhưng làm thế nào để làm như vậy? Và Python có tùy chọn nào? Hãy cùng nhau tìm hiểu.

Trong bài viết này:

  • Vòng giá trị số lên xuống trong Python
  • Giá trị tròn lên xuống: Chức năng Python từ
    w = lambda x: x if x == int(x) else int(x)+1
    [w(i) for i in z]
    >>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
    
    7
    • Ví dụ: Số python tròn đến số nguyên đầy đủ gần nhất
  • Làm tròn xuống số nguyên tiếp theo: Chức năng Python từ
    w = lambda x: x if x == int(x) else int(x)+1
    [w(i) for i in z]
    >>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
    
    8
    • Ví dụ: Các giá trị tròn xuống số nguyên đầy đủ tiếp theo
  • Làm tròn đến số nguyên tiếp theo: Chức năng Python từ
    w = lambda x: x if x == int(x) else int(x)+1
    [w(i) for i in z]
    >>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
    
    9
    • Ví dụ: Giá trị Python tròn lên đến toàn bộ số
  • Làm tròn tất cả các giá trị trong danh sách hoặc mảng python
    • Giá trị python tròn với danh sách hiểu
    • Làm tròn tất cả các giá trị với vòng lặp Python từ
      round(5.4598)
      # Returns: 5
      
      0
  • Bản tóm tắt

# Vòng giá trị số lên xuống trong Python

Khi chúng ta làm tròn các giá trị, chúng ta đi từ một giá trị số với các vị trí thập phân đến một số toàn bộ. Với quá trình này, chúng tôi mất một số độ chính xác, nhưng giá trị tròn thường dễ đọc và giải thích hơn nhiều.

Python có ba cách để biến giá trị dấu phẩy động thành số toàn bộ (số nguyên):

  • Hàm
    w = lambda x: x if x == int(x) else int(x)+1
    [w(i) for i in z]
    >>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
    
    7 tích hợp làm tròn các giá trị lên xuống.
  • Hàm
    w = lambda x: x if x == int(x) else int(x)+1
    [w(i) for i in z]
    >>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
    
    8 làm tròn đến số nguyên đầy đủ tiếp theo.
  • Hàm
    w = lambda x: x if x == int(x) else int(x)+1
    [w(i) for i in z]
    >>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
    
    9 làm tròn đến số nguyên đầy đủ tiếp theo.

Nếu bạn chỉ muốn một chuỗi hoặc đầu ra tập lệnh với toàn bộ số, thì chuỗi định dạng Python cũng có thể thực hiện tác vụ đó. Bằng cách đó, bạn cũng không mất độ chính xác trong giá trị ban đầu.

Hãy cùng xem ba cách tiếp cận này hoạt động như thế nào.

# Giá trị tròn lên và xuống: Chức năng Python từ w = lambda x: x if x == int(x) else int(x)+1 [w(i) for i in z] >>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4] 7

Để làm tròn các giá trị điểm nổi lên xuống, chúng tôi sử dụng chức năng Python từ

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
7 (Lutz, 2013; Python Docs, N.D. A). Có hai cách để sử dụng chức năng này. Tùy chọn đầu tiên là làm tròn các giá trị đến một số thập phân nhất định. Tùy chọn khác biến giá trị dấu phẩy động thành một số toàn bộ.

Để làm điều đó sau, chúng tôi gọi

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
7 với một đối số: giá trị để biến thành một số nguyên. Ví dụ:

round(5.4598)
# Returns: 5

Hàm

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
7 làm tròn các giá trị của
round(5.4598)
# Returns: 5
8 đối với số nguyên chẵn (Python Docs, n.d. A). Vì vậy,
round(5.4598)
# Returns: 5
8 được làm tròn cho các giá trị dương và làm tròn cho các giá trị âm.

Chẳng hạn, cả

# Some numbers to round
valueA = 3.14159265359
valueB = 1845.7409947
valueC = -100.95
valueD = 9.5432
valueE = 34.49953

# Round values to whole numbers
roundA = round(valueA)
roundB = round(valueB)
roundC = round(valueC)
roundD = round(valueD)
roundE = round(valueE)

# 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)
0 và
# Some numbers to round
valueA = 3.14159265359
valueB = 1845.7409947
valueC = -100.95
valueD = 9.5432
valueE = 34.49953

# Round values to whole numbers
roundA = round(valueA)
roundB = round(valueB)
roundC = round(valueC)
roundD = round(valueD)
roundE = round(valueE)

# 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)
1 trở lại
# Some numbers to round
valueA = 3.14159265359
valueB = 1845.7409947
valueC = -100.95
valueD = 9.5432
valueE = 34.49953

# Round values to whole numbers
roundA = round(valueA)
roundB = round(valueB)
roundC = round(valueC)
roundD = round(valueD)
roundE = round(valueE)

# 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)
2, trong khi
# Some numbers to round
valueA = 3.14159265359
valueB = 1845.7409947
valueC = -100.95
valueD = 9.5432
valueE = 34.49953

# Round values to whole numbers
roundA = round(valueA)
roundB = round(valueB)
roundC = round(valueC)
roundD = round(valueD)
roundE = round(valueE)

# 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)
3 cho
# Some numbers to round
valueA = 3.14159265359
valueB = 1845.7409947
valueC = -100.95
valueD = 9.5432
valueE = 34.49953

# Round values to whole numbers
roundA = round(valueA)
roundB = round(valueB)
roundC = round(valueC)
roundD = round(valueD)
roundE = round(valueE)

# 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)
4 và
# Some numbers to round
valueA = 3.14159265359
valueB = 1845.7409947
valueC = -100.95
valueD = 9.5432
valueE = 34.49953

# Round values to whole numbers
roundA = round(valueA)
roundB = round(valueB)
roundC = round(valueC)
roundD = round(valueD)
roundE = round(valueE)

# 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)
5 cho
# Some numbers to round
valueA = 3.14159265359
valueB = 1845.7409947
valueC = -100.95
valueD = 9.5432
valueE = 34.49953

# Round values to whole numbers
roundA = round(valueA)
roundB = round(valueB)
roundC = round(valueC)
roundD = round(valueD)
roundE = round(valueE)

# 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)
6. Hành vi Python này hơi khác so với cách làm tròn thường đi.

Khi chúng ta cung cấp cho

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
7 một số nguyên, hàm chỉ đơn giản là trả về toàn bộ số đó. Không có lỗi nào trong trường hợp đó, và vì vậy chúng tôi không phải kiểm tra xem đối số chức năng có giá trị phân số không. Nó cần phải là một con số mặc dù; Giá trị chuỗi không được phép trong
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
7.

# Ví dụ: Số python tròn đến số nguyên đầy đủ gần nhất

Để xem chức năng

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
7 hoạt động như thế nào trong thực tế, hãy để xem xét các chương trình nhỏ sau:

# Some numbers to round
valueA = 3.14159265359
valueB = 1845.7409947
valueC = -100.95
valueD = 9.5432
valueE = 34.49953

# Round values to whole numbers
roundA = round(valueA)
roundB = round(valueB)
roundC = round(valueC)
roundD = round(valueD)
roundE = round(valueE)

# 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)

Ở đây trước tiên chúng tôi tạo năm biến với các giá trị dấu phẩy động. Một số có rất nhiều vị trí thập phân và một số khác chỉ một vài.

Sau đó, chúng tôi làm một số làm tròn. Vì vậy, chúng tôi gọi hàm

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
7 và cung cấp một đối số: giá trị thành vòng. Chúng tôi lưu trữ các số nguyên tròn trong các biến
Value:          Rounded:
3.14159265359   3
1845.7409947    1846
-100.95         -101
9.55432         10
34.49953        34
1 đến
Value:          Rounded:
3.14159265359   3
1845.7409947    1846
-100.95         -101
9.55432         10
34.49953        34
2.

Tiếp theo, chúng tôi đưa ra kết quả với hàm

Value:          Rounded:
3.14159265359   3
1845.7409947    1846
-100.95         -101
9.55432         10
34.49953        34
3. Đối với mỗi biến, chúng tôi hiển thị giá trị ban đầu (ví dụ:
Value:          Rounded:
3.14159265359   3
1845.7409947    1846
-100.95         -101
9.55432         10
34.49953        34
4) và kết quả làm tròn của nó (
Value:          Rounded:
3.14159265359   3
1845.7409947    1846
-100.95         -101
9.55432         10
34.49953        34
1). Với phương thức chuỗi
Value:          Rounded:
3.14159265359   3
1845.7409947    1846
-100.95         -101
9.55432         10
34.49953        34
6, chúng tôi biện minh cho giá trị đầu tiên ở bên trái. Điều đó phù hợp với các giá trị cho đầu ra đẹp hơn.

Ở đây, cách các giá trị tròn trông như thế nào:

Value:          Rounded:
3.14159265359   3
1845.7409947    1846
-100.95         -101
9.55432         10
34.49953        34

# Làm tròn xuống số nguyên tiếp theo: Chức năng Python từ w = lambda x: x if x == int(x) else int(x)+1 [w(i) for i in z] >>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4] 8

Hàm

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
8 trả về giá trị sàn của đối số của nó, đó là số nguyên gần nhất ít hơn hoặc bằng với giá trị đối số đó (Python Docs, n.d. b).

Điều đó nghe có vẻ trừu tượng, nhưng chỉ là một cách khác để nói rằng

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
8 làm tròn đến tổng số tiếp theo. Vì vậy,
import math

math.floor(12.75)
# Returns: 12
0 trở thành
import math

math.floor(12.75)
# Returns: 12
1 và
import math

math.floor(12.75)
# Returns: 12
2 được biến thành
import math

math.floor(12.75)
# Returns: 12
3. Và vì hàm làm tròn xuống một giá trị nhỏ hơn,
import math

math.floor(12.75)
# Returns: 12
4 trở thành
import math

math.floor(12.75)
# Returns: 12
5.

Ở đây, một ví dụ nhanh về chức năng

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
8:

import math

math.floor(12.75)
# Returns: 12

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
8 chỉ chấp nhận một đối số: giá trị để làm tròn xuống. Với một chức năng tùy chỉnh nhỏ, chúng tôi cũng có thể làm tròn xuống một số vị trí thập phân. Xem tròn xuống một số thập phân cụ thể để biết thêm.

# Ví dụ: Các giá trị tròn xuống số nguyên đầy đủ tiếp theo

Để khám phá cách thức hoạt động của hàm

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
8, hãy để kiểm tra chương trình Python sau:

import math

# Some random values
valueA = 11.2829850
valueB = 19.2545879
valueC = 0.50000001
valueD = 34.6403001
valueE = -9.9121138

# Round values down to the nearest full integer
roundA = math.floor(valueA)
roundB = math.floor(valueB)
roundC = math.floor(valueC)
roundD = math.floor(valueD)
roundE = math.floor(valueE)

# Print the results
print(valueA, "rounded =", roundA)
print(valueB, "rounded =", roundB)
print(valueC, "rounded =", roundC)
print(valueD, "rounded =", roundD)
print(valueE, "rounded =", roundE)

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

import math

math.floor(12.75)
# Returns: 12
9. Điều đó làm cho nó có thể sử dụng chức năng
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
8. Sau đó, chúng tôi thực hiện năm biến,
Value:          Rounded:
3.14159265359   3
1845.7409947    1846
-100.95         -101
9.55432         10
34.49953        34
4 đến
import math

# Some random values
valueA = 11.2829850
valueB = 19.2545879
valueC = 0.50000001
valueD = 34.6403001
valueE = -9.9121138

# Round values down to the nearest full integer
roundA = math.floor(valueA)
roundB = math.floor(valueB)
roundC = math.floor(valueC)
roundD = math.floor(valueD)
roundE = math.floor(valueE)

# Print the results
print(valueA, "rounded =", roundA)
print(valueB, "rounded =", roundB)
print(valueC, "rounded =", roundC)
print(valueD, "rounded =", roundD)
print(valueE, "rounded =", roundE)
2. Mỗi cái giữ một giá trị dấu phẩy động.

Tiếp theo chúng tôi làm tròn những giá trị đó xuống. Vì vậy, chúng tôi gọi hàm

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
8 trên mỗi biến. Chúng tôi lưu trữ kết quả trong các biến mới (
Value:          Rounded:
3.14159265359   3
1845.7409947    1846
-100.95         -101
9.55432         10
34.49953        34
1 đến
Value:          Rounded:
3.14159265359   3
1845.7409947    1846
-100.95         -101
9.55432         10
34.49953        34
2).

Phần thứ ba của chương trình xuất hiện các biến có chức năng Python từ ____43. Ở đây mỗi câu lệnh

Value:          Rounded:
3.14159265359   3
1845.7409947    1846
-100.95         -101
9.55432         10
34.49953        34
3 hiển thị giá trị ban đầu và phiên bản làm tròn của nó. Đây là cách trông như thế nào:

11.282985 rounded = 11
19.2545879 rounded = 19
0.50000001 rounded = 0
34.6403001 rounded = 34
-9.9121138 rounded = -10

# Làm tròn đến số nguyên tiếp theo: Chức năng Python từ w = lambda x: x if x == int(x) else int(x)+1 [w(i) for i in z] >>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4] 9

Hàm

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
9 trả về trần của đối số của nó, đó là số nguyên gần nhất lớn hơn hoặc bằng với giá trị đối số đó (Python Docs, n.d. b).

Đó chỉ là một cách để nói rằng

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
9 làm tròn lên một số toàn bộ:
11.282985 rounded = 11
19.2545879 rounded = 19
0.50000001 rounded = 0
34.6403001 rounded = 34
-9.9121138 rounded = -10
1 trở thành
11.282985 rounded = 11
19.2545879 rounded = 19
0.50000001 rounded = 0
34.6403001 rounded = 34
-9.9121138 rounded = -10
2 và
11.282985 rounded = 11
19.2545879 rounded = 19
0.50000001 rounded = 0
34.6403001 rounded = 34
-9.9121138 rounded = -10
3 bị biến thành
11.282985 rounded = 11
19.2545879 rounded = 19
0.50000001 rounded = 0
34.6403001 rounded = 34
-9.9121138 rounded = -10
4. Và bởi vì hàm làm tròn lên đến một giá trị lớn hơn,
11.282985 rounded = 11
19.2545879 rounded = 19
0.50000001 rounded = 0
34.6403001 rounded = 34
-9.9121138 rounded = -10
5 trở thành
import math

math.floor(12.75)
# Returns: 12
5.

Ở đây, một ví dụ nhanh chóng về

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
9:

import math

math.ceil(12.45)
# Returns: 13

Ở đây, một cách để ghi nhớ sự khác biệt giữa

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
8 và
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
9. Như bạn đã biết, mỗi giá trị điểm nổi nằm giữa hai số nguyên liên tiếp.
import math

math.ceil(12.45)
# Returns: 13
0, ví dụ, nằm trong khoảng từ
import math

math.ceil(12.45)
# Returns: 13
1 và
import math

math.ceil(12.45)
# Returns: 13
2.

Bây giờ trần trần của người Viking là điểm cuối cao hơn của khoảng này. Vì vậy,

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
9 trả về
import math

math.ceil(12.45)
# Returns: 13
2. Điểm bắt đầu thấp hơn của khoảng số nguyên đó được gọi là sàn nhà. Vì vậy,
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
8 trả về 12.

Chức năng Python từ

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
9 luôn làm tròn đến một số nguyên đầy đủ. Nhưng với một chức năng tùy chỉnh nhỏ, chúng ta cũng có thể làm tròn đến một số vị trí thập phân. Xem các giá trị Python tròn đến các vị trí thập phân cho cách làm thế nào.

# Ví dụ: Giá trị Python tròn lên đến toàn bộ số

Hãy cùng xem cách

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
9 hoạt động trong thực tế. Chương trình ví dụ này làm tròn một số giá trị dấu phẩy động lên đến một số toàn bộ:

import math

# Some random values
valueA = 11.2829850
valueB = 19.2545879
valueC = 0.50000001
valueD = 34.6403001
valueE = -9.9121138

# Round values up to the nearest full integer
roundA = math.ceil(valueA)
roundB = math.ceil(valueB)
roundC = math.ceil(valueC)
roundD = math.ceil(valueD)
roundE = math.ceil(valueE)

# Output the results
print(valueA, "rounded =", roundA)
print(valueB, "rounded =", roundB)
print(valueC, "rounded =", roundC)
print(valueD, "rounded =", roundD)
print(valueE, "rounded =", roundE)

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

import math

math.floor(12.75)
# Returns: 12
9. Điều đó làm cho chức năng
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
9 có sẵn. Sau đó, chúng tôi thực hiện năm biến khác nhau, được đặt tên là
Value:          Rounded:
3.14159265359   3
1845.7409947    1846
-100.95         -101
9.55432         10
34.49953        34
4 đến
import math

# Some random values
valueA = 11.2829850
valueB = 19.2545879
valueC = 0.50000001
valueD = 34.6403001
valueE = -9.9121138

# Round values down to the nearest full integer
roundA = math.floor(valueA)
roundB = math.floor(valueB)
roundC = math.floor(valueC)
roundD = math.floor(valueD)
roundE = math.floor(valueE)

# Print the results
print(valueA, "rounded =", roundA)
print(valueB, "rounded =", roundB)
print(valueC, "rounded =", roundC)
print(valueD, "rounded =", roundD)
print(valueE, "rounded =", roundE)
2. Mỗi người có một số với một số vị trí thập phân.

Phần tiếp theo làm tròn các giá trị đó lên đến một số nguyên đầy đủ. Để thực hiện điều đó, chúng tôi gọi hàm

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
9 trên mỗi biến. Chúng tôi đặt các giá trị trả về chức năng đó trong các biến mới,
Value:          Rounded:
3.14159265359   3
1845.7409947    1846
-100.95         -101
9.55432         10
34.49953        34
1 đến
Value:          Rounded:
3.14159265359   3
1845.7409947    1846
-100.95         -101
9.55432         10
34.49953        34
2.

Phân đoạn mã thứ ba có hàm

Value:          Rounded:
3.14159265359   3
1845.7409947    1846
-100.95         -101
9.55432         10
34.49953        34
3 đầu ra cả giá trị gốc và tròn. Ở đây, những gì hiển thị:

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
0

# Làm tròn tất cả các giá trị trong danh sách hoặc mảng python

Tất nhiên cũng có những tình huống chúng tôi có một loạt các giá trị để làm tròn, thay vì một giá trị duy nhất. Có hai cách chính để làm điều đó: với một danh sách hiểu hoặc vòng lặp

round(5.4598)
# Returns: 5
0. Hãy xem nào.

# Vòng python giá trị với danh sách hiểu biết

Khi chúng ta có một chuỗi các giá trị dấu phẩy động, một cách để làm tròn chúng là với sự hiểu biết danh sách. Điều đó chỉ cần một chút mã và chạy hiệu quả.

Ở đây, một chương trình nhỏ làm điều đó:

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
1

Đầu tiên chúng tôi nhập mô -đun

import math

math.floor(12.75)
# Returns: 12
9. Điều đó làm cho các chức năng làm tròn
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
9 và
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
8 có sẵn. Sau đó, chúng tôi lập một danh sách có tên
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
00, chứa một số giá trị dấu phẩy động.

Để làm tròn các giá trị đó vào toàn bộ số, chúng tôi thực hiện ba toàn bộ danh sách. Cái đầu tiên thực hiện

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
7 cho mỗi giá trị danh sách. Hai chức năng khác thực thi
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
9 và
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
8 trên các giá trị danh sách.

Chúng tôi tạo ra các giá trị mà các hàm đó sử dụng với vòng lặp

round(5.4598)
# Returns: 5
0:
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
05. Điều này lấy một giá trị từ danh sách
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
00 tại một thời điểm và cung cấp nó thông qua biến
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
07.

Những toàn bộ danh sách đó tạo ra danh sách mới. Chúng tôi chỉ định các biến đó cho các biến

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
08,
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
09 và
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
10.

Phần cuối cùng của chương trình đưa ra danh sách ban đầu và ba phần tròn. Đây là cách trông như thế nào:

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
2

Trong ví dụ trên, chúng tôi giữ danh sách ban đầu. Nếu bạn không cần phải giữ lại các giá trị đó, bạn cũng có thể ghi đè danh sách ban đầu với các giá trị tròn. Đây là cách mà một danh sách hiểu được điều đó:

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
3

# Làm tròn tất cả các giá trị với vòng lặp Python từ round(5.4598) # Returns: 5 0

Tất nhiên chúng ta cũng có thể làm tròn các giá trị danh sách hoặc mảng với vòng lặp

round(5.4598)
# Returns: 5
0 thông thường. Đ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 giúp dễ dàng thực hiện các hoạt động bổ sung trên mỗi yếu tố. Cộng với một vòng lặp
round(5.4598)
# Returns: 5
0 dễ đọc hơn trong các tình huống phức tạp.

Tại đây, cách một chương trình Python làm tròn các giá trị bên trong vòng lặp

round(5.4598)
# Returns: 5
0:

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
4

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

import math

math.floor(12.75)
# Returns: 12
9 để có thể sử dụng
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
9 và
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
8. Sau đó, chúng tôi lập một danh sách (
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
00) với các giá trị dấu phẩy động.

Sau đó, chúng tôi thực hiện ba danh sách trống ban đầu:

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
08,
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
09 và
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
10. Chúng sẽ giữ các giá trị tròn của chúng tôi.

Để lấp đầy các danh sách đó, chúng tôi tạo một vòng lặp Python

round(5.4598)
# Returns: 5
0. Vòng lặp này đi qua tất cả các yếu tố trong danh sách
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
00. Trong mỗi chu kỳ vòng lặp, biến
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
07 giữ một phần tử duy nhất trong danh sách đó.

Bên trong vòng lặp, chúng tôi gọi phương thức

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
25 trên mỗi ba danh sách mới. Bằng cách đó, chúng tôi thêm một yếu tố mới cho họ. Giá trị chúng tôi thêm mỗi lần vượt qua vòng lặp là biến
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
07 được làm tròn với
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
7,
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
9 và
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
8. Sau khi vòng lặp này được thực hiện, mỗi danh sách trong ba danh sách đó có một giá trị tròn từ danh sách ban đầu.

Chương trình kết thúc với một số tuyên bố

Value:          Rounded:
3.14159265359   3
1845.7409947    1846
-100.95         -101
9.55432         10
34.49953        34
3. Hiển thị danh sách ban đầu và các dẫn xuất tròn của nó. Ở đây, đầu ra đó trông như thế nào:

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
5

Nhân tiện, bạn không phải lập một danh sách mới khi bạn làm tròn các giá trị. Nếu bạn tốt với việc mất dữ liệu gốc, bạn cũng có thể ghi đè danh sách hiện có. Làm như vậy thật dễ dàng khi bạn kết hợp vòng lặp

round(5.4598)
# Returns: 5
0 với hàm
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
32:

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
6

ĐỌC THÊM

  • Giá trị trăn tròn đến một số vị trí thập phân nhất định
  • Cắt ngắn các giá trị điểm nổi python thành một số
  • Cắt ngắn giá trị python thành một số chữ số thập phân nhất định

# Bản tóm tắt

Python có ba cách để làm tròn giá trị dấu phẩy động đến một số toàn bộ. Hàm

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
7 làm tròn giá trị lên hoặc xuống. Một chữ số thập phân của
round(5.4598)
# Returns: 5
8 có vòng python hướng tới một số nguyên thậm chí. Điều đó làm cho nó làm tròn cho các giá trị tích cực và xuống cho những giá trị tiêu cực.

Hàm

w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
8, mặt khác, luôn làm tròn xuống số nguyên đầy đủ gần nhất.
w = lambda x: x if x == int(x) else int(x)+1
[w(i) for i in z]
>>> [2, 3, 3, 3, 4, 4, 3, 3, 4, 4]
9 làm ngược lại. Chức năng đó luôn làm tròn lên đến một số toàn bộ.

Tất cả ba chức năng hoạt động theo cùng một cách: cung cấp chức năng với một đối số, đó là giá trị điểm nổi thành vòng.

Xuất bản ngày 20 tháng 12 năm 2019.

«Tất cả các bài báo Python

Có chức năng Roundup trong Python không?

Hàm python vòng () hàm vòng () hàm trả về một số điểm nổi là phiên bản tròn của số được chỉ định, với số thập phân được chỉ định. Số thập phân mặc định là 0, có nghĩa là hàm sẽ trả về số nguyên gần nhất. The round() function returns a floating point number that is a rounded version of the specified number, with the specified number of decimals. The default number of decimals is 0, meaning that the function will return the nearest integer.

Làm thế nào để bạn làm tròn lên xuống trong Python?

Hàm vòng () làm tròn một số đến toàn bộ số gần nhất.Phương thức toán học () làm tròn một số lên đến toàn bộ số gần nhất trong khi phương thức math.floor () làm tròn một số xuống toàn bộ số gần nhất.The math. ceil() method rounds a number up to the nearest whole number while the math. floor() method rounds a number down to the nearest whole number.

Làm thế nào để bạn sử dụng .2f trong Python?

2F là một trình giữ chỗ cho số điểm nổi.Vì vậy, %D được thay thế bằng giá trị đầu tiên của tuple tức là 12 và %.2F được thay thế bằng giá trị thứ hai I.E 150.87612.... Định dạng chuỗi Python ..

Làm thế nào để bạn vòng 2 trong Python?

Hàm vòng () của Python yêu cầu hai đối số.Đầu tiên là số được làm tròn.Đối số thứ hai quyết định số lượng vị trí thập phân mà nó được làm tròn.Để làm tròn số đến 2 số thập phân, đưa ra đối số thứ hai là 2.give second argument as 2.