[問題] 整數sizeof問題
python新手發問
在實作時遇到一個問題
(0).__sizeof__()
回傳24bytes的大小
(1).__sizeof__()
為28bytes的大小
(1073741823).__sizeof__()
為28bytes的大小
(1073741824).__sizeof__()
為32bytes的大小
總結以上和實作
整數0 大小為24bytes
整數1~1073741823及-1~-1073741823為28bytes
整數1073741824~? 為32bytes
....以此類推
我想要問的是
1073741824大小為什麼是32bytes
而1073741823大小為什麼是28bytes
這個數字是如何推導出來的?
或者說背後的儲存原理是什麼?
(這個數字我是用for+if去抓出來的)
還有 為什麼整數0大小卻是24bytes
而1之後卻是28bytes了
爬stackoverflow沒有相關的問題
google也沒有講解
甚至連python官方文件也沒提到
所以上來發問
感激不盡
-----
Sent from JPTT on my Asus ASUS_Z00UD.
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 110.28.72.40
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1498797116.A.3F8.html
推
06/30 14:37, , 1F
06/30 14:37, 1F
→
06/30 15:32, , 2F
06/30 15:32, 2F
→
06/30 15:33, , 3F
06/30 15:33, 3F
→
06/30 15:35, , 4F
06/30 15:35, 4F
為何是30位長度多1 就是這個搞不清
推
06/30 16:35, , 5F
06/30 16:35, 5F
※ 編輯: LessonWang (110.28.72.40), 06/30/2017 17:35:38
→
06/30 18:39, , 6F
06/30 18:39, 6F
→
06/30 18:40, , 7F
06/30 18:40, 7F
→
06/30 18:41, , 8F
06/30 18:41, 8F
→
06/30 18:44, , 9F
06/30 18:44, 9F
→
06/30 18:52, , 10F
06/30 18:52, 10F
→
06/30 18:53, , 11F
06/30 18:53, 11F
→
06/30 18:55, , 12F
06/30 18:55, 12F
→
06/30 18:55, , 13F
06/30 18:55, 13F
→
06/30 19:01, , 14F
06/30 19:01, 14F
實際應用的問題才是問題 這種刁鑽難解而且有關語言本身底層運作的問題 真的毫無意義 只顯得新手想一步登天而已 我會好好考慮之後問問題的模式 謝謝f大
→
06/30 19:13, , 15F
06/30 19:13, 15F
→
06/30 19:13, , 16F
06/30 19:13, 16F
→
06/30 19:25, , 17F
06/30 19:25, 17F
→
06/30 19:48, , 18F
06/30 19:48, 18F
→
06/30 19:51, , 19F
06/30 19:51, 19F
→
06/30 19:53, , 20F
06/30 19:53, 20F
→
06/30 19:54, , 21F
06/30 19:54, 21F
原來如此 感謝m大!!
※ 編輯: LessonWang (110.28.72.40), 06/30/2017 19:57:17
※ 編輯: LessonWang (110.28.72.40), 06/30/2017 19:58:23
推
06/30 23:59, , 22F
06/30 23:59, 22F
推
07/01 00:30, , 23F
07/01 00:30, 23F
沒有哦
推
07/01 00:45, , 24F
07/01 00:45, 24F
有考慮過xd
※ 編輯: LessonWang (110.28.72.40), 07/01/2017 08:20:53
※ 編輯: LessonWang (110.28.72.40), 07/01/2017 09:14:14