之前學過C,現在學Python 3.5,下圖來自廖雪峰網站
#為什麼Python整數、浮點數沒有大小限制? ? Python中整數和浮點數怎麼儲存的?
是不是說Python所有宣告整數、浮點數就直接相當於C中的long long和long double之類的,就直接最大記憶體分配嗎?
phpcn_u15822017-05-18 10:59:58
Python 的整數,理論上只要內存放得下,可以是任意長度的(遠超long long)。
如果C的long裝得下,就用long裝,裝不下就自動轉換到大整數,這一過程對於程式設計師基本上透明。
而浮點數,應該就是C的double型。
Floating point numbers are usually implemented using double in C. ——Python官方文件
PHPz2017-05-18 10:59:58
在Python中,整數是只要記憶體夠,長度是無限制的,應該是比C裡面的long long大很多的。
浮點數是用機器上的雙精度(64 bit)的,提供大約17位元有效數字,應該跟C裡面的double類型是差不多的。