看板 Python 關於我們 聯絡資訊
https://gist.github.com/shihyu/a56fb45dfb7781a48bcb7199cad25a0f 下面寫成一行 train_data = np.stack([np.array(Image.open("./data/56_imitate_train_set/" + '{0:05}'.format(int(row[0])) + ".jpg"))/255.0 for row in csv.reader(traincsv)]) 會出現 MemoryError, 下面錯誤訊息 Traceback (most recent call last): File "test.py", line 22, in <module> train_data = np.stack([np.array(Image.open("./data/56_imitate_train_set/" + '{0:05}'.format(int(row[0])) + ".jpg"))/255.0 for row in csv.reader(traincsv)]) File "/home/shihyu/anaconda3/lib/python3.6/site-packages/numpy/core/shape_base.py", line 360, in stack return _nx.concatenate(expanded_arrays, axis=axis, out=out) MemoryError 但是把一行下面拆開來寫是ok for row in csv.reader(traincsv): tmp = [np.array(Image.open("./data/56_imitate_train_set/" + '{0:05}'.format(int(row[0])) + ".jpg"))/255.0] train_data = np.stack(tmp) 請問這是什麼原因? 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 175.181.180.179 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1529143399.A.F63.html
brahmsliu: 你把tmp 在每次回圈都重新定義了?所以不會爆 06/18 04:42