def cleanDecimals(numstr):
'''
如果输入52.4565000
则输出:52.4565
就是把小数之后的冗余的0给删去
'''
numstr = str(numstr)
dotlocation = numstr.find(".")
if not dotlocation == -1:
'''
先把字符串“23.4950”从4截取到0得“4950”,再将其倒置得“0594”,变成整数得594,
再讲594变成字符串得“594”,算出“594”长度得3,故keep_decimals = 3,keep_decimals
是要保留的小数位数
'''
keep_decimals = len(str(int(numstr[(dotlocation + 1)::][::-1])))
numstr = float(numstr)
return round(numstr, keep_decimals)
额。。。。刚刚发现一个bug,当输入234的时候,输出是234.0,输入65,输出65.0。。看来只对xx.xx000有效
把小数之后的冗余的0给删去
最新推荐文章于 2022-06-30 15:33:56 发布