Arn*_*nav 18 python memory-management short
Python根据底层系统架构自动分配整数.不幸的是,我有一个庞大的数据集需要完全加载到内存中.
那么,有没有办法强制Python只使用2个字节的某些整数(相当于C++'short')?
Arm*_*her 35
不.但是你可以在数组中使用短整数:
from array import array
a = array("h") # h = signed short, H = unsigned short
Run Code Online (Sandbox Code Playgroud)
只要该值保留在该数组中,它就是一个短整数.
感谢Armin指出'阵列'模块.我还发现了'struct'模块,它在一个字符串中包含c样式的结构:
从文档(https://docs.python.org/library/struct.html):
>>> from struct import *
>>> pack('hhl', 1, 2, 3)
'\x00\x01\x00\x02\x00\x00\x00\x03'
>>> unpack('hhl', '\x00\x01\x00\x02\x00\x00\x00\x03')
(1, 2, 3)
>>> calcsize('hhl')
8
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
35597 次 |
| 最近记录: |