在Python

时间:2017-09-01 18:04:44

标签: python python-3.x

我使用sys.maxsize检查了Python持有的整数的最大大小,并返回了9223372036854775807

那为什么我仍然可以存储大于此范围的值?

存储整数需要多少字节,Python根据整数的大小改变字节数?

我正在使用Python 3.6

1 个答案:

答案 0 :(得分:4)

如果您检查sys.maxsize的{​​{3}},则会看到

  

sys.maxsize
  给出最大值的整数可以是Py_ssize_t类型的变量。在32位平台上通常为2**31 - 1,在64位平台上为2**63 - 1

Python int中没有任何内容!它讨论的是Py_ssize_t,这是一个内部C API,与使用Python int没有实际意义。

Python int使用任意精度表示,它将使用更多字节的内存来表示更大的整数。它们不受Py_ssize_t s。

值的限制