[問題] np.stack 錯誤問題

看板Python作者 (gigigigi)時間7年前 (2018/06/16 18:03), 編輯推噓1(100)
留言1則, 1人參與, 7年前最新討論串1/1
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

06/18 04:42, 7年前 , 1F
你把tmp 在每次回圈都重新定義了?所以不會爆
06/18 04:42, 1F
文章代碼(AID): #1R9E1dzZ (Python)
文章代碼(AID): #1R9E1dzZ (Python)