Python 教程:浮點運算揭秘

Mondo 科技 更新 2024-01-19

嗨,大家好,歡迎來到我的python教程專欄!今天我們要講的是Python中乙個非常有趣的話題——浮點運算。在我們的日常編碼中,我們可能會遇到一些令人煩惱的浮點運算,讓我們一起揭開這個謎團的神秘面紗吧!

問題的本質:十進位與二進位

首先,讓我們了解浮點數在計算機中是如何表示的。 在硬體級別,浮點數表示為基於 2 的二進位分數。 這意味著某些十進位小數可能無法準確地表示為二進位分數。 例如,十進位 01 是二進位中的無限迴圈分數。 因此,我們在機器中儲存的是近似值,而不是真正的十進位小數。

下面是乙個示例

例如,我們都知道小數點 1 3 無法準確表示,我們只能將其寫下來。 333,但永遠不能寫出正好等於 1 3 的小數點後一位。 再次,01 二進位計算機儲存的是近似值,而不是精確值。

print(0.1 + 0.1 + 0.1 == 0.3) 這將返回 false

輸出

false

小數點顯示問題

為了方便顯示,Python 通常會對浮點數的顯示值進行四捨五入。 因此,我們看到的值與我們實際儲存的值之間可能略有不同。

匯入數學模組。

import math

定義浮點數。

num = 0.1

列印實際儲存的二進位近似值。

print(num)

使用格式化字串顯示 40 位有效數字。

formatted_num = format(num, '.40g')

print(formatted_num)

列印 num 的真實值。

print(repr(num))

輸出

如何處理?

為了更好地控制浮點數的輸出,我們可以使用格式化的字串來控制有效數字的顯示:

方法 1

匯入數學模組。

import math

formatted_num = format(math.pi, '.12g') 顯示 12 位有效數字。

print(formatted_num)

輸出'3.14159265359'

輸出

方法二

匯入數學模組。

import math

print(''.format(math.pi))顯示兩個小數位。

輸出'3.14'

輸出

總結

浮點問題並非 Python 所獨有,它存在於所有支援硬體浮點運算的語言中。 對於絕大多數日常應用,浮點運算的誤差對最終結果沒有太大影響。 但是,在某些精度至關重要的場景中,我們可能需要使用其他方法,例如使用字串格式,或者考慮使用支援高精度操作的庫。

最後,不要被浮點運算問題害怕只要我們有意識地處理它,並使用適當的方法,我們仍然可以得到我們想要的結果。 希望這篇文章對您有所幫助!

如果您對此主題有更多疑問,或者您還有什麼想知道的,請在評論中告訴我感謝大家的支援,我們下次再見!

相關問題答案

    Python 程式設計示例 如何使用 return

    在Python程式語言中,return語句有乙個非常重要的目的。它用於從函式返回值,以便在呼叫函式時獲取結果。return 語句可用於多種資料型別,例如整數 浮點數 字串 列表等。以下是如何使用 return 語句的一些示例 .返回乙個整數 def add a,b result a b return...

    詳細迴圈的 Python 程式設計示例

    Python 中的 for 迴圈是一種常見的控制流語句,它允許您遍歷序列 例如列表 元組 字典等 或其他可迭代物件來執行特定操作。在 Python 中,迴圈有很多用途,下面我將介紹其中的一些和示例。.遍歷列表。您可以使用 for 迴圈遍歷列表並對每個元素執行特定操作。例如,以下 將列印列表中的每個元...

    錄音正常,但Siri無法錄製?教程來了

    許多人在使用 Siri 時會遇到乙個問題 即使錄音功能正常工作,Siri 似乎也 聽不到 自己的聲音。這個問題可能是由多種原因引起的,下面我們將詳細分析並提供相應的解決方案。檢查錄製許可權 確保 Siri 有權訪問裝置的麥克風。在裝置的設定中,找到 Siri 並確認麥克風許可權已開啟。如果未開啟許可...

    教資會面試准考證以黑白或彩色列印

    一 引言。在準備教師資格證面試的過程中,准考證的列印是必不可少的一步。但是,我們需要考慮的是,在列印准考證時,是選擇黑白還是彩色的問題。本文將重點討論這一主題,並深入探討以下幾個方面 .入場券的有效期。首先,我們要明確一點,無論是黑白還是彩色,都不會影響准考證的有效期。這是因為准考證的主要資訊,如考...

    在伊斯蘭教的聖地,在無數人崇拜的“黑屋”裡,有什麼?

    在伊斯蘭教中,乙個神秘而莊嚴的地方吸引了無數信徒的目光和腳步 克爾白 這座城市位於沙地阿拉伯的麥加,不僅是伊斯蘭教的發源地,也是每個穆斯林心中的聖地。每年,數以百萬計的信徒聚集在這裡朝聖。但是,這座簡單的黑色方形建築隱藏著什麼樣的秘密和力量,使它成為世界各地穆斯林崇拜的物件?麥加是一座見證伊斯蘭教發...