在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 小助理,如未能正确解答您的问题,请继续追问。 |