如何使用Python以列表形式导入Mathematica生成的.txt文件

时间:2016-02-12 19:17:00

标签: python wolfram-mathematica

我有一个.txt文件,其中包含{{1,2,3},{4,5,6}}(" Mathematica Form")的数值。我需要使用python [[1 2 3]

将其导入数组

4 5 6]。

我的file.txt包含500行×3000列,写为{{1,2,3,..},{0,1,1,1,..},{},.... {1, 2,3,...,}}。

我已使用此代码

import numpy;
from numpy import *;
data = loadtxt("file.txt");

1 个答案:

答案 0 :(得分:1)

You can use ast.literal_eval() to safely evaluate a string containing a Python literal:

import ast

with open('filename.txt', 'r') as f:
    data = f.read().replace('\n', '')

data = data.replace('{', '[').replace('}', ']')
mylist = ast.literal_eval(data)
print(mylist)