|
发表于 2024-5-9 17:18:10
|
显示全部楼层
在Python中,可以使用内置的round函数来实现数字的四舍五入,并且可以通过格式化字符串来控制小数位数。
下面是一个示例代码:
- def round_number(num):
- # 先将数字保留两位小数并四舍五入
- rounded_num = round(num, 2)
-
- # 将保留两位小数后的数字转为字符串
- num_str = str(rounded_num)
-
- # 如果小数部分为空,直接返回
- if '.' not in num_str:
- return num_str
-
- # 获取小数部分的末尾数字
- decimal_part = num_str.split('.')[1]
- last_digit = int(decimal_part[-1])
-
- # 判断末尾数字是否为5或0,如果是则直接返回保留两位小数后的数字
- if last_digit == 5 or last_digit == 0:
- return num_str
-
- # 如果末尾数字大于5,则向上进位
- if last_digit > 5:
- rounded_num += 0.05
-
- # 如果末尾数字小于5,则向下取整
- if last_digit < 5:
- rounded_num -= 0.05
-
- # 再次保留两位小数并四舍五入
- rounded_num = round(rounded_num, 2)
-
- return str(rounded_num)
复制代码
使用示例:
- print(round_number(37.931)) # 输出:37.95
- print(round_number(37.372)) # 输出:37.40
- print(round_number(403.7823)) # 输出:403.80
- print(round_number(1075.8996))# 输出:1075.90
复制代码
希望对你有帮助!
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 |
|