如何将外部数据转换为数组?

时间:2019-06-19 17:15:02

标签: python arrays numpy import sage

我正在加载一些看起来像这样的外部数据:

[[1 0 0][1 1 1][0 1 1]]

(没有逗号)插入需要运行数组的代码中。我希望代码看起来像这样:

np.array([[1 0 0],[1 1 1],[0 1 1]])

我不确定如何将此隐藏到数组中。

我尝试将其视为列表,但这不起作用。

1 个答案:

答案 0 :(得分:0)

我将使用ast并用逗号替换一些字符。

import ast
txt = "[[1 0 0][1 1 1][0 1 1]]".replace('][', '],[').replace(' ', ',')
np.array(ast.literal_eval(txt))

Result:
array([[1, 0, 0],[1, 1, 1],[0, 1, 1]])

参考:https://docs.python.org/2/library/ast.html