亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

python是如何計算2^100的? (不是如何用Python計算2^100) 而且為什么不會溢

python是如何計算2^100的? (不是如何用Python計算2^100) 而且為什么不會溢

慕娘9325324 2018-07-04 09:09:22
?
查看完整描述

1 回答

?
慕蓋茨4494581

TA貢獻1850條經驗 獲得超11個贊

在python2.7中,表示整數的有int和long兩個類型。int類型和C++的int類似,都是一個固定位數的數;long則是一個理論上可以存儲無限大數的數據類型。當你的數大到可能溢出時,python就會機智的幫你轉換成long,這樣就避免了溢出。而python3之后整數只有一個可以放任意大數的int了??墒菬o論哪種,都是采用了特殊的方法實現了不會溢出的大整數。整數溢出的本質就是空間不夠無法完整存放數據,因此對付溢出的思路就是加空間,1Byte hold不住上2Byte,2Byte不行再加。python中的大整數就是用了這個原理,把一個格外大的數拆分成若干個byte,然后把每個byte存下來。然后再針對多字整型實現一套操作,放在用戶面前的就是一個用起來很省心的絕對沒有溢出的good int了。但相應的,由于每次運算要處理多個byte,效率下降是必然的了

查看完整回答
反對 回復 2018-07-30
  • 1 回答
  • 0 關注
  • 886 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號