华夏有一极恶之兽,二足二手,顶生白发。擅唱,跳,rap。练二年又余,便呼全民者好,乃拋衣,得球起舞。起舞之时,多作赞美家禽之言,大呼:鸡甚美!往返反复。叫声凄凄然,其吊带一松,便上下窜动,令人生畏

  • 我去,还真有人做这个出来

  • 首先使用 round 进行舍入时会存在误差,就拿默认的银行家舍入法来说,当数字的下一位等于 5 时,若前一位是偶数,则舍去;若前一位是奇数,则进位。但是 round(2.675, 2) 是输出: 2.67,而非你预期的 2.68,就是因为是计算机使用二进制浮点数表示小数导致的精度问题。

    你文档里没说清楚,如果你不想要这种默认的银行家舍入,依然是用 decimal 库,
    使用 ROUND_HALF_UP 模式,就是 “普通四舍五入” 或 “向上四舍五入”
    使用 ROUND_HALF_EVEN 模式,就是银行家舍入法

    # 普通四舍五入
    from decimal import Decimal, ROUND_HALF_UP
    
    def custom_round(value, decimal_places):
    
        factor = Decimal(f'1e-{decimal_places}')
        return Decimal(value).quantize(factor, rounding=ROUND_HALF_UP)
    
    #测试,将数字转成字符串可以确保 Decimal 对象能够精确地表示原始数字
    print(custom_round('1.45', 1))  # 输出: 1.5
    print(custom_round('1.55', 1))  # 输出: 1.6
    print(custom_round('1.44', 1))  # 输出: 1.4
    print(custom_round('1.46', 1))  # 输出: 1.5
    
    #你的测试用例
    print(custom_round('1.45',1))
    print(custom_round('1.845',2))
    
    

    另外,不要排斥用 gpt,它本来就是字典,查一下又不会死,从你回复的态度来看,你似乎很不屑 gpt
    默写出来和百度查答案在解决问题上没区别

  • 这是计算机的问题,不是 python 的问题,计算机是二进制,你用内置的 decimal 库就行了
    话说这种问题不直接百度或者 gpt 问下吗? 很死板的问题

  • 给你弄个高赞,这样你也会变成有权威的答案,赞下老虎哥😈

  • 这么好,那恭喜,遇到好公司

  • 仅楼主可见
  • 这玩意不一定互联网老人,大概率是装逼佬,把自己臆想成互联网老人
    你看这玩意的所有论点论据都是倚老卖老的倾向
    应该是一个 21 年毕业的小朋友吧

    1. 是否负责公司盈利业务的测试
    2. 劳动合同续签情况
    3. 性价比
    4. 是否有人罩着
    5. 年纪大小
  • 你能不能单独自己去写篇水文? 别在我这里刷存在感呀,,,,MD,我都忘记了你这么一号人物了,我对你这类人敏感啊,唉,等下中饭都吃不下了

    送你一句话,好好想想,别出来恶心人了

  • 这算啥清奇? 跟设计测试计划一样,你肯定是要围绕项目要达到的目的效果展开。我只是出于利益权衡和人性的角度来看

华夏有一极恶之兽,二足二手,顶生白发。擅唱,跳,rap。练二年又余,便呼全民者好,乃拋衣,得球起舞。起舞之时,多作赞美家禽之言,大呼:鸡甚美!往返反复。叫声凄凄然,其吊带一松,便上下窜动,令人生畏