numpy.savetxt() 报错 Mismatch between array dtype (‘object‘) and format specifier (‘%.18e‘)的解决方法

将数组存储为文件:

import numpy as np


a = np.array([[1,2,3],[1,2]])
np.savetxt('xxx.txt',a)

报错:

TypeError: Mismatch between array dtype ('object') and format specifier ('%.18e')

解决方法:

  1. 可以把 数组中每个元素个数变成一样(长度相同)
  2. 或者改用 pickle 代替 numpy.savetxt()
import numpy as np
import pickle

a = np.array([[1,2,3],[1,2]])
with open('uu.pk','wb') as file:
    pickle.dump(a,file)
with open('uu.pk', 'rb') as file_1:
    b = pickle.load(file_1)
print(type(b))
print(b)

运行结果:

<class 'numpy.ndarray'>
[list([1, 2, 3]) list([1, 2])]
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章