如何解决不同大小的数组的Numpy.save列表给出:TypeError:'_io.TextIOWrapper'对象不可下标
这是我的代码:
import numpy as np
mylist = [np.arange(0,1,0.5),np.arange(0,2,0.5)]
np.save('mylist',mylist)
with open('mylist.npy') as last:
print(lst[0])
我遇到了错误
TypeError Traceback (most recent call last)
<ipython-input-7-2461c8fce207> in <module>
6
7 with open('mylist.npy') as lst:
---> 8 print(lst[0])
TypeError: '_io.TextIOWrapper' object is not subscriptable
我曾尝试根据其他类似的帖子来修改代码,例如包含lst = lst.read()
或lst = lst.readlines()
,但这会给我一个Unicode错误:
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x93 in position 0: invalid start byte
有人有什么建议吗?谢谢!
解决方法
hpaulj评论说,解决方案是使用np.load
而不是read
或readlines
。
import numpy as np
mylist = [np.arange(0,1,0.5),np.arange(0,2,0.5)]
np.save('mylist',mylist)
with open('mylist.npy') as last:
lst = np.load(lst,allow_pickle = True)
print(lst[0])
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。