numpy.loadtxt 加载一个文件
numpy.loadtxt to load a file
我有一个如下所示的文件:
(完整版可在此处访问:https://drive.google.com/file/d/1uKRgp6X6ZfQbUsEr2bQ3_ZOPZYFSjmhj/view?usp=sharing)
[[51, 49, array([[ 67., 0., 0., 0.],
[ 1., 47., 0., 0.],
[117., 0., 0., 0.],
[ 10., 126., 109., 0.],
[ 7., 0., 0., 0.],
[ 90., 50., 0., 0.],
[ 50., 0., 0., 0.],
[ 4., 69., 40., 49.]])],
[70, 49, array([[ 63., 0., 0., 0.],
[127., 48., 0., 0.],
[118., 0., 0., 0.],
[ 52., 125., 68., 0.],
[ 2., 0., 0., 0.],
[ 62., 102., 0., 0.],
[ 84., 0., 0., 0.],
[ 58., 89., 5., 72.]])],
[75, 49, array([[122., 0., 0., 0.],
[120., 104., 0., 0.],
[ 86., 0., 0., 0.],
[104., 24., 15., 0.],
[ 99., 0., 0., 0.],
[ 77., 41., 0., 0.],
[124., 0., 0., 0.],
[126., 37., 73., 59.]])]
其中标题为迭代 = 51、值 = 49、角度 = 数组(...)、迭代 = 70... 等等。
如何在我的脚本中加载它?谢谢
默认的 numpy
加载方法在这里不起作用,因为文件没有预期的格式。如果您负责生成此文件,请考虑使用例如numpy.savetxt
或 numpy.save
,因此您可以相应地使用 numpy.loadtxt
或 numpy.load
。
对于您拥有的文件,如果源是可信的,非常快速且肮脏的 解决方案是使用eval
加载此文件。但是,请考虑阅读 the dangers of eval
,因为 它可以执行该文件中的 任何 代码 .
假设您已像这样导入 numpy
:
import numpy as np
这应该有效:
with open('filename.txt') as file:
contents = file.read().replace('array', 'np.array')
data = eval(contents)
我有一个如下所示的文件:
(完整版可在此处访问:https://drive.google.com/file/d/1uKRgp6X6ZfQbUsEr2bQ3_ZOPZYFSjmhj/view?usp=sharing)
[[51, 49, array([[ 67., 0., 0., 0.],
[ 1., 47., 0., 0.],
[117., 0., 0., 0.],
[ 10., 126., 109., 0.],
[ 7., 0., 0., 0.],
[ 90., 50., 0., 0.],
[ 50., 0., 0., 0.],
[ 4., 69., 40., 49.]])],
[70, 49, array([[ 63., 0., 0., 0.],
[127., 48., 0., 0.],
[118., 0., 0., 0.],
[ 52., 125., 68., 0.],
[ 2., 0., 0., 0.],
[ 62., 102., 0., 0.],
[ 84., 0., 0., 0.],
[ 58., 89., 5., 72.]])],
[75, 49, array([[122., 0., 0., 0.],
[120., 104., 0., 0.],
[ 86., 0., 0., 0.],
[104., 24., 15., 0.],
[ 99., 0., 0., 0.],
[ 77., 41., 0., 0.],
[124., 0., 0., 0.],
[126., 37., 73., 59.]])]
其中标题为迭代 = 51、值 = 49、角度 = 数组(...)、迭代 = 70... 等等。
如何在我的脚本中加载它?谢谢
默认的 numpy
加载方法在这里不起作用,因为文件没有预期的格式。如果您负责生成此文件,请考虑使用例如numpy.savetxt
或 numpy.save
,因此您可以相应地使用 numpy.loadtxt
或 numpy.load
。
对于您拥有的文件,如果源是可信的,非常快速且肮脏的 解决方案是使用eval
加载此文件。但是,请考虑阅读 the dangers of eval
,因为 它可以执行该文件中的 任何 代码 .
假设您已像这样导入 numpy
:
import numpy as np
这应该有效:
with open('filename.txt') as file:
contents = file.read().replace('array', 'np.array')
data = eval(contents)