首頁>Club>
16
回覆列表
  • 1 # 愛逗的小夥伴

    通常,python四捨五入使用內建的round函式就可以了

    >>> round(0.4)

    0.0

    >>> round(0.5)

    1.0

    然而,對於需要精確的四捨五入,就有問題

    >>> round(1.115,2) # no

    1.11

    >>> round(1.125,2) # yes

    1.13

    原因是,部分小數無法完全用二進位制表示

    再來看一下步驟一的兩個數值

    於是,作為一個較方便的做法,我們可以使用下面方式實現精確的四捨五入:

    def round_up(value):

    """四捨五入保留2位小數

    :param value:數值

    :return:四捨五入後的值

    """

    # 替換內建round函式,實現保留2位小數的精確四捨五入

    return round(value * 100) / 100.0

    6

    原理就是將數值放大100倍,以利用下面的精確的四捨五入的結果

    7

    測試一下:

    >>> round_up(1.115)

    1.12

    >>> round_up(1.125)

    1.13

  • 中秋節和大豐收的關聯?
  • 天貓店鋪買賣需要注意哪些方面?