Numpy能夠讀寫磁盤上的文本數據或二進制數據。
將數組以二進制格式保存到磁盤
np.load和np.save是讀寫磁盤數組數據的兩個主要函數,默認情況下,數組是以未壓縮的原始二進制格式保存在擴展名為.npy的文件中。
import numpy as np a=np.arange(5) np.save('test.npy',a)
這樣在程序所在的文件夾就生成了一個test.npy文件
將test.npy文件中的文件讀出來
import numpy as np a=np.load('test.npy') print(a)
np.savez
如果你想將多個數組保存到一個文件中的話,可以使用numpy.savez函數。savez函數的第一個參數是文件名,其后的參數都是需要保存的數組,也可以使用關鍵字參數為數組起一個名字,非關鍵字參數傳遞的數組會自動起名為arr_0, arr_1, …。
savez函數輸出的是一個壓縮文件(擴展名為npz),其中每個文件都是一個save函數保存的npy文件,文件名對應於數組名。load函數自動識別npz文件,並且返回一個類似於字典的對象,可以通過數組名作為關鍵字獲取數組的內容:
import numpy as np a=np.arange(3) b=np.arange(4) c=np.arange(5) np.savez('array_save.npz',a,b,c_array=c)
這樣程序所在文件夾就生成了一個array_save.npz文件
把npz文件中的數據讀出來
import numpy as np A=np.load('array_save.npz') print(A['arr_0']) print(A['arr_1']) print(A['c_array'])
train_Resnet50 = extract_Resnet50(paths_to_tensor(train_files)) ###x, 1, 1, 2048 valid_Resnet50 = extract_Resnet50(paths_to_tensor(valid_files)) ###x, 1, 1, 2048 test_Resnet50 = extract_Resnet50(paths_to_tensor(test_files)) ###x, 1, 1, 2048 np.savez('bottleneck_features/DogResnet50Data.npz',train=train_Resnet50,valid=valid_Resnet50,test=test_Resnet50) bottleneck_features = np.load('bottleneck_features/DogResnet50Data.npz') train_Resnet502 = bottleneck_features['train'] valid_Resnet502 = bottleneck_features['valid'] test_Resnet502 = bottleneck_features['test']
以上這篇numpy的文件存儲.npy .npz 文件詳解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。