【发布时间】:2018-03-05 16:20:15
【问题描述】:
我有一个txt文件,可以显示为:
10 1:0.870137474304 2:0.722354071782 3:0.671913562758
11 1:0.764133072717 2:0.4893616821 3:0.332713609364
20 1:0.531732713984 2:0.0967819558321 3:0.169802773309
然后我想读取文件并形成一个矩阵形式为:
[[10 0.870137474304 0.722354071782 0.671913562758 ]
[11 0.764133072717 0.4893616821 0.332713609364 ]
[20 0.531732713984 0.0967819558321 0.169802773309]]
我知道如何拆分除第一列以外的元素。第一列怎么处理?
matrix = []
lines = open("test.txt").read().split("\n") # read all lines into an array
for line in lines:
array [0] = line.split(" ")[0]
# Split the line based on spaces and the sub-part on the colon
array = [float(s.split(":")[1]) for s in line.split(" ")]
matrix.append(array)
print(matrix)
【问题讨论】:
标签: python arrays csv readfile