thk*_*ang 2 python arrays boolean
它最多包含1000 x 1000 x 1000个元素,这对于python字典来说太大了.
使用dict,大约30 x 1000 x 1000个元素,在我的机器上它已经消耗了2GB的内存并且一切都被扔石头了.
任何可以处理三维数组的模块,其值只有True/False?我检查了bitarray http://pypi.python.org/pypi/bitarray,它似乎合理并用C编码,但它似乎更像是一个比特流而不是一个数组,因为它只支持一维.
numpy是你的朋友:
import numpy as np
a = np.zeros((1000,1000,1000), dtype=bool)
a[1,10,100] = True
Run Code Online (Sandbox Code Playgroud)
内存占用尽可能少.
如果确实需要,还可以查看collections模块中的defaultdict类容器,该容器不存储默认值的值.但如果它不是必须的话,请使用numpy.
| 归档时间: |
|
| 查看次数: |
3971 次 |
| 最近记录: |