我正在尝试将数据文件读入二维数组。 例如:
file.dat
:
1 2 3 a
4 5 6 b
7 8 9 c
我尝试过类似的事情:
file=open("file.dat","r")
var = [[]]
var.append([j for j in i.split()] for i in file)
但这没效果。
我需要二维数组形式的数据,因为我之后需要对每个元素进行操作,例如。
for k in range(3):
newval(k) = var[k,1]
知道怎么做吗?
答案 0 :(得分:3)
file = open("file.dat", "r") # open file for reading
var = [] # initialize empty array
for line in file:
var.append(line.strip().split(' ')) # split each line on the <space>, and turn it into an array
# thus creating an array of arrays.
file.close() # close file.
答案 1 :(得分:0)
这对我有用:
with open("/path/to/file", 'r') as f:
lines = [[float(n) for n in line.strip().split(' ')] for line in f]
真的很奇怪的人在评论中说没有一条线解决方案。我花了这么少的测试来完成这项工作。
答案 2 :(得分:0)
v = []
with open("data.txt", 'r') as file:
for line in file:
if line.split():
line = [float(x) for x in line.split()]
v.append(line)
print(v)