文件是这样的:
1 118 1
1 285 3
...
39861 27196 5
所以,我想通过将数字存储在变量中来解析文件,因为我知道apriori每行包含三个整数 * ,我应该怎么做?
这是我的尝试:
f = open(fname, 'r')
no_of_headers = 3
for i, line in enumerate(f, no_of_headers):
print line
这里应该修改为读取到a,b和c,而不是读入行,因为我们知道每行都有三个数字!
* 与c++
中的sstream
相同
答案 0 :(得分:1)
只需使用Python的(有限的)模式识别语法:
for i, line in enumerate(f, no_of_headers):
a,b,c = line.strip().split() # splits the line by whitespace
这会将分割线的每个元素分别分配给a
,b
,c
。由于每行包含三个元素,a
映射到第一个元素,b
映射到第二个元素,c
映射到第三个元素。