課程
/后端開發
/Python
/初識Python
"整數和浮點數在計算機內部存儲的方式是不同的,整數運算永遠是精確的(除法難道也是精確的?是的?。?,而浮點數運算則可能會有四舍五入的誤差。" 請問怎么理解?
2017-12-25
源自:初識Python 3-1
正在回答
在過往的和現在的版本運行中,整數和浮點數在加減乘方面都滿足整數整數為整數,其余任意混合都是浮點數,所以在這里可以看到整數運算都是精確的,也就是說該值就是本身,而浮點數中有無限趨近的情況,是無法精確的表達出來。但是在這個教程中的除法運算在現在的版本中如print(5/2),運行出來的結果是2.5,不是整數類型,當然5/3更是不精確的1.666666.....7。若想在現在的版本中得到除法中整數精確類型則需要取整:print(int(5/2))。這是我對這一節自身遇到的問題的看法
整數運算結果還是整數,在內存中所占字節有限,可以完全表示;浮點數運算結果還是浮點數,可能出現循環小數,在內存中無法完全表示,須得四舍五入
舉報
學python入門視頻教程,讓你快速入門并能編寫簡單的Python程序
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2017-12-25
在過往的和現在的版本運行中,整數和浮點數在加減乘方面都滿足整數整數為整數,其余任意混合都是浮點數,所以在這里可以看到整數運算都是精確的,也就是說該值就是本身,而浮點數中有無限趨近的情況,是無法精確的表達出來。但是在這個教程中的除法運算在現在的版本中如print(5/2),運行出來的結果是2.5,不是整數類型,當然5/3更是不精確的1.666666.....7。若想在現在的版本中得到除法中整數精確類型則需要取整:print(int(5/2))。這是我對這一節自身遇到的問題的看法
2017-12-25
整數運算結果還是整數,在內存中所占字節有限,可以完全表示;浮點數運算結果還是浮點數,可能出現循環小數,在內存中無法完全表示,須得四舍五入