我正在使用matplotlib来绘制一个图的点([0,0,0],[0,0,1],[0,0,2],... [ 255,255,255])在x轴上为我所使用的列表:在python2.7中追加大的列表
from mpl_toolkits.mplot3d import Axes3D
x=[]
for i,j,k in product(xrange(256), repeat=3):
x.append([i,j,k])
y=[]
for count in x:
y.append(probability[count]) # this is how my probability array is stored
pylab.figure(0)
pylab.plot(x,y,'b')
pylab.show()
这个想法我已经从以前的帖子借来。我是python的新手,所以请帮忙。问题是上面的代码给出了“内存错误”。有人可以提供一个有效的方法来追加元素'x'
你的问题是什么? – milancurcic 2012-01-27 17:16:28
问题是上面的代码给出了内存错误。那么,有人可以建议一种有效的方法来将元素附加到x或其他有效的方式来绘制 – 2012-01-27 17:21:39
您正在创建大约256^3 * 4字节的对象,更不用说在append中创建的每个列表的开销)'。对于只占用*很多内存的东西来说,使用Python是唯一可行的。有什么具体原因可以说明你为什么这么做,是否有比通过所有1600万个值更有效的方法? – Makoto 2012-01-27 17:36:05