Pep*_*oro 2 python arrays string numpy eval
我从一个程序生成一堆数据并将其存储在一个文件中。文件内容的一个例子是
[[1, 2, 3], [4, 5, 6]]
Run Code Online (Sandbox Code Playgroud)
如您所见,数据具有数组的确切形式。后来在另一个程序中,我想读取数据并使用它。我在用
text_file = open('DataFile.txt')
lines = text_file.readlines() #We have only 1 line but this doesn't matter
Run Code Online (Sandbox Code Playgroud)
变量lines是一个包含 1 个元素的数组,即字符串[[1, 2, 3], [4, 5, 6]]。我希望这个字符串再次成为一个数字数组。只是使用相同的分隔符等。我该怎么做?
小智 5
您可以使用ast.literal_eval:
>>> from ast import literal_eval
>>> mystr = '[[1, 2, 3], [4, 5, 6]]'
>>> x = literal_eval(mystr)
>>> x
[[1, 2, 3], [4, 5, 6]]
>>> type(x)
<type 'list'>
>>>
Run Code Online (Sandbox Code Playgroud)