如果我在Python中進行一些普通的計算,會發生一些非常奇怪的事情。如果我沒有使用括號進行乘法運算,它會給出正確的結果,但是如果將一些內容設置爲括號,則總乘法運算等於零。如果我把元素放進括號中,乘法運算會給出零(python)
對於那些誰不相信(我知道這聽起來很奇怪):如圖this Jupyter screenshot
>>> print(1.1*1.15*0.8*171*15625*24*(60/368*0.75)/1000000)
0.0
>>> print(1.1*1.15*0.8*171*15625*24*60/368*0.75/1000000)
7.93546875
。
兩次乘法的唯一區別在於第一次有大括號60/368*0.75
。
這怎麼可能,我能做些什麼呢?我不知道這怎麼可能。
它是關於操作員的優先級,通過消除括號,方程將不相等。 – amin
'*'和'/'具有相同的優先級,因此省略參數將從左到右。 – Felk
但兩個計算是相等的,它怎麼會產生這樣的差異?以及如何防止這種事情?我意外地注意到它 – Koen