Python 从.txt文件中读取矩阵
我将如何读取以下文件:Python 从.txt文件中读取矩阵,python,Python,我将如何读取以下文件: 4 1.66 3.79 2.65 4.25 4.46 1.46 8.51 3.14 3.51 1.44 8.26 7.87 0.40 3.31 1.97 2.30 1.54 2.84 9.07 8.44 其中第一个数字是方程组中方程的数量,最后一行是相应方程的相等值。例如,这将是: 1.66 3.79 2.65 4.25 | 1.54 4.46 1.46 8.51 3.14 | 2.84 3.51 1.44 8.26 7.87 | 9.07 0.40 3.31 1.97
4
1.66 3.79 2.65 4.25
4.46 1.46 8.51 3.14
3.51 1.44 8.26 7.87
0.40 3.31 1.97 2.30
1.54 2.84 9.07 8.44
其中第一个数字是方程组中方程的数量,最后一行是相应方程的相等值。例如,这将是:
1.66 3.79 2.65 4.25 | 1.54
4.46 1.46 8.51 3.14 | 2.84
3.51 1.44 8.26 7.87 | 9.07
0.40 3.31 1.97 2.30 | 8.44
作为矩阵。我的问题是在python中,如何将其转换为如下内容:
A = [[1.66, 3.79, 2.65, 4.25], [4.46, 1.46, 8.51, 3.14], [3.51, 1.44, 8.26, 7.87], [0.40, 3.31, 1.97, 2.30]]
B = [1.54, 2.84, 9.07, 8.44]
In [7]: a = []
In [8]: b = []
In [9]: with open("a.txt") as f:
...: data = f.readlines()
...: no_of_equations = int(data[0].strip())
...: for i in data[1:no_of_equations+1]:
...: a.append(list(map(float,i.split())))
...: b.append(list(map(float, data[no_of_equations+1].split())))
...:
In [10]: a
Out[10]:
[[1.66, 3.79, 2.65, 4.25],
[4.46, 1.46, 8.51, 3.14],
[3.51, 1.44, 8.26, 7.87],
[0.4, 3.31, 1.97, 2.3]]
In [11]: b
Out[11]: [[1.54, 2.84, 9.07, 8.44]]