def round_up_to_base[x, base=10]:
return x + [base - x] % base
def round_down_to_base[x, base=10]:
return x - [x % base]
mà cho
cho
>>> [i for i in range[20]]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
1:>>> [i for i in range[20]]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
>>> [round_down_to_base[x=i, base=5] for i in range[20]]
[0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 10, 10, 10, 10, 10, 15, 15, 15, 15, 15]
>>> [round_up_to_base[x=i, base=5] for i in range[20]]
[0, 5, 5, 5, 5, 5, 10, 10, 10, 10, 10, 15, 15, 15, 15, 15, 20, 20, 20, 20]
cho
>>> [i for i in range[20]]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
2:>>> [i for i in range[20]]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
>>> [round_down_to_base[x=i, base=10] for i in range[20]]
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10]
>>> [round_up_to_base[x=i, base=10] for i in range[20]]
[0, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 20, 20, 20, 20, 20, 20, 20, 20, 20]
được thử nghiệm trong Python 3.7.9
Trong hướng dẫn này, bạn sẽ học cách sử dụng Python để làm tròn một số đến bội số gần nhất, chẳng hạn như 2, 5 hoặc 10. và để sử dụng. Python làm cho nó đơn giản để làm tròn một số lên hoặc xuống, nhưng làm tròn vào một khoảng thời gian cụ thể là một câu chuyện khác.
Trong thực tế, đây có thể là một cái gì đó dễ thực hiện hơn trong Excel. Excel cung cấp một hàm
>>> [i for i in range[20]]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
3, làm tròn một số vào khoảng thời gian gần nhất được truyền dưới dạng tham số. Đến cuối hướng dẫn này, bạn sẽ học được cách mô phỏng hành vi của hàm >>> [i for i in range[20]]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
3, bằng cách học cách sử dụng Python để làm tròn một số vào một khoảng thời gian nhất định.Bạn sẽ học cách làm tròn đến một số khoảng thời gian được xác định trước, chẳng hạn như 2 và 5, cũng như 10 hoặc bất kỳ hệ số nhân nào của mười. Bạn cũng sẽ học được cách phát triển chức năng của riêng mình cho phép bạn vượt qua trong một khoảng và làm tròn một số đến giá trị khoảng gần nhất.
Câu trả lời nhanh: Sử dụng
5>>> [i for i in range[20]]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
- Các số làm tròn trong Python: Một bản tóm tắt nhanh chóng
- Phát triển một chức năng tùy chỉnh để làm tròn thành bội số trong Python [ví dụ: 2, 5, v.v.]
- Làm tròn một số thành số nhân 10 trong Python
- Làm tròn cột gấu trúc thành bội số của một giá trị
- Sự kết luận
- Tài nguyên bổ sung
Các số làm tròn trong Python: Một bản tóm tắt nhanh chóng
Phát triển một chức năng tùy chỉnh để làm tròn thành bội số trong Python [ví dụ: 2, 5, v.v.]
Làm tròn một số thành số nhân 10 trong Pythonit does not give you the option to round a number to a given interval. For example, the
>>> [i for i in range[20]]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
6 function would allow you to round to the
nearest whole number [i.e., an interval of 1], it would not allow you to round the nearest interval of, say, 5. Làm tròn cột gấu trúc thành bội số của một giá trị
# Using the round[] function to round a number in Python number1 = 1.55 number2 = 33.67 rounded1 = round[number1, 0] rounded2 = round[number2, 0] print['rounded1 = ', rounded1] print['rounded2 = ', rounded2] # Returns: # rounded1 = 2.0 # rounded2 = 34.0
Sự kết luận
Tài nguyên bổ sung
Phát triển một chức năng tùy chỉnh để làm tròn thành bội số trong Python [ví dụ: 2, 5, v.v.]
Làm tròn một số thành số nhân 10 trong Python
Làm tròn cột gấu trúc thành bội số của một giá trị Functions allow us to follow the programming DRY ethos, meaning “don’t repeat yourself”. This means that we can re-use functions throughout our code. While the code the function will take is relatively straightforward, developing a function also allows our code to be more readable. Readability is an important skill in troubleshooting your code. It also allows future readers to better understand what it is you’re hoping to accomplish.
Sự kết luận
# Developing a function to round to a multiple def round_to_multiple[number, multiple]: return multiple * round[number / multiple] # Rounding 23 to a multiple of 5 print[round_to_multiple[23, 5]] # Returns 25 # Rounding 121 to an interval of 100 print[round_to_multiple[121, 100]] # Returns 100
Tài nguyên bổ sung
- Python cung cấp một chức năng cho phép bạn làm tròn một số, hàm
6. Chức năng này là một phần của thư viện Python bình thường, có nghĩa là bạn không cần nhập bất cứ thứ gì. Hàm chấp nhận hai tham số: [1] một số [có thể là một số nguyên hoặc giá trị điểm nổi] và [2] số thập phân để làm tròn số.>>> [i for i in range[20]] [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
- Mặc dù chức năng này đặc biệt hữu ích trong việc làm tròn một số, nhưng nó không cung cấp cho bạn tùy chọn để làm tròn một số vào một khoảng thời gian nhất định. Ví dụ: hàm
6 sẽ cho phép bạn làm tròn đến số toàn bộ gần nhất [nghĩa là, khoảng 1], nó sẽ không cho phép bạn làm tròn khoảng thời gian gần nhất của, 5.>>> [i for i in range[20]] [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
Vì vậy, giả sử chúng tôi muốn làm tròn một số vào số toàn bộ gần nhất của nó, chúng tôi có thể sử dụng hàm
>>> [i for i in range[20]]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
6. Hãy để xem những gì nó trông như thế nào:We can customize our function to take a third parameter to indicate that we want to round down, up, or to the nearest multiple.# Developing a function to round to a multiple from math import ceil, floor def round_to_multiple[number, multiple, direction='nearest']: if direction == 'nearest': return multiple * round[number / multiple] elif direction == 'up': return multiple * ceil[number / multiple] elif direction == 'down': return multiple * floor[number / multiple] else: return multiple * round[number / multiple] # Rounding 23 to a multiple of 5 print[round_to_multiple[23, 5, 'nearest2']] print[round_to_multiple[23, 5, 'up']] print[round_to_multiple[23, 5, 'down']] # Returns: # 25 # 25 # 20
Tương tự, Python cung cấp các chức năng thông qua thư viện
>>> [i for i in range[20]]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
9 để cho phép bạn làm tròn giá trị lên hoặc xuống. Hàm >>> [round_down_to_base[x=i, base=5] for i in range[20]]
[0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 10, 10, 10, 10, 10, 15, 15, 15, 15, 15]
>>> [round_up_to_base[x=i, base=5] for i in range[20]]
[0, 5, 5, 5, 5, 5, 10, 10, 10, 10, 10, 15, 15, 15, 15, 15, 20, 20, 20, 20]
0 được sử dụng để làm tròn một số xuống, trong khi hàm >>> [round_down_to_base[x=i, base=5] for i in range[20]]
[0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 10, 10, 10, 10, 10, 15, 15, 15, 15, 15]
>>> [round_up_to_base[x=i, base=5] for i in range[20]]
[0, 5, 5, 5, 5, 5, 10, 10, 10, 10, 10, 15, 15, 15, 15, 15, 20, 20, 20, 20]
1 được sử dụng để làm tròn một số.Làm tròn một số thành số nhân 10 trong Python
Làm tròn cột gấu trúc thành bội số của một giá trịmultiplier of ten, we mean increments of 1, 10, 100, 1000, and so on.
Sự kết luận
Tài nguyên bổ sung
# Rounding to a multiplier of ten in Python number = 145244 rounded_ten = round[number, -1] rounded_hundred = round[number, -2] rounded_thousand = round[number, -3] print[rounded_ten] print[rounded_hundred] print[rounded_thousand] # Returns # 145240 # 145200 # 145000
Làm tròn cột gấu trúc thành bội số của một giá trị
Sự kết luận
Tài nguyên bổ sung
# Loading a sample Pandas dataframe import pandas as pd df = pd.DataFrame.from_dict[{ 'Date': pd.date_range['2022-01-01', '2022-01-05'], 'Amount': [139, 155, 432, 342, 121] }] print[df.head[]] # Returns: # Date Amount # 0 2022-01-01 139 # 1 2022-01-02 155 # 2 2022-01-03 432 # 3 2022-01-04 342 # 4 2022-01-05 121
Python cung cấp một chức năng cho phép bạn làm tròn một số, hàm
>>> [i for i in range[20]]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
6. Chức năng này là một phần của thư viện Python bình thường, có nghĩa là bạn không cần nhập bất cứ thứ gì. Hàm chấp nhận hai tham số: [1] một số [có thể là một số nguyên hoặc giá trị điểm nổi] và [2] số thập phân để làm tròn số.>>> [i for i in range[20]]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
0Mặc dù chức năng này đặc biệt hữu ích trong việc làm tròn một số, nhưng nó không cung cấp cho bạn tùy chọn để làm tròn một số vào một khoảng thời gian nhất định. Ví dụ: hàm
>>> [i for i in range[20]]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
6 sẽ cho phép bạn làm tròn đến số toàn bộ gần nhất [nghĩa là, khoảng 1], nó sẽ không cho phép bạn làm tròn khoảng thời gian gần nhất của, 5.Sự kết luận
Tài nguyên bổ sung
Để tìm hiểu thêm về chức năng Python
>>> [i for i in range[20]]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
6, hãy xem tài liệu chính thức ở đây.Tài nguyên bổ sung
Để tìm hiểu thêm về các chủ đề liên quan, hãy xem các bài viết dưới đây:
- Python: Cắt ngắn một chiếc phao [6 cách khác nhau]
- Chứng số mũ Python: Sử dụng Python để nâng số lên một nguồn điện
- Python giá trị tuyệt đối: abs [] trong python
- Tạo các cột mới trong gấu trúc