把小数之后的冗余的0给删去

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有效
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值