只是一個問題,我有點困惑什麼是inf和nan?
所以我搞亂float('inf')
和那種想知道它用於什麼。
另外我注意到,如果我添加-inf + inf
我得到nan
是那樣的零或不。
我很困惑這兩個值的用途是什麼。
同樣當我做nan - inf
我沒有得到-inf
我得到nan
我確定這一切都很簡單,但我偶然發現他們,不知道他們做了什麼。
只是一個問題,我有點困惑什麼是inf和nan?
所以我搞亂float('inf')
和那種想知道它用於什麼。
另外我注意到,如果我添加-inf + inf
我得到nan
是那樣的零或不。
我很困惑這兩個值的用途是什麼。
同樣當我做nan - inf
我沒有得到-inf
我得到nan
我確定這一切都很簡單,但我偶然發現他們,不知道他們做了什麼。
inf
是無窮大 - 這是比任何其他值更大的值。 -inf
因此小於任何其他值。
nan
代表非A號碼,這不等於0
。
雖然正負無窮大可以說是關於0
的對稱關係,但對於任何值n
都可以這樣說,這意味着將兩者相加產生的結果爲nan
。這個想法在this math.se question中討論。
因爲nan
是(字面意思)不是一個數字,你不能做算術吧,所以第二個操作的結果也不是一個數量(nan
)
nan
意思是「不是一個數字」,這是一個浮點值,如果您執行的計算結果不能用數字表示。您使用NaN
執行的任何計算也將導致NaN
。
inf
表示無窮大。
例如:
>>> 2*float("inf")
inf
>>> -2*float("inf")
-inf
>>> float("inf")-float("inf")
nan
Inf
是無窮大,這是一個「大比所有其他數字「的數字。嘗試從它減去任何你想要的東西,它不會變小。所有數字都是< Inf
。 -Inf
是類似的,但比一切都小。
NaN
表示不是數字。如果你嘗試做一個沒有意義的計算,你會得到NaN
。 Inf - Inf
就是這樣一種計算。通常使用NaN
僅表示缺少一些數據。
你說:
當我這樣做
nan - inf
我不明白-inf
我得到nan
這是因爲含NaN
任何操作作爲操作數將返回NaN
。
與NaN
的比較將返回無序結果。
>>> float('Inf') == float('Inf')
True
>>> float('NaN') == float('NaN')
False
ohhhh哈哈只是想知道謝謝卷! – Serial