我正在读取一个具有可变列数的文件,例如 3 个固定列 + 未知/可变列数:
21 48 77
15 33 15 K12
78 91 17
64 58 24 R4 C16 R8
12 45 78 Y66
87 24 25
10 33 75
18 19 64 CF D93
我想将前三列条目存储在特定的列表/数组中,因为我需要使用它们,同时将行的所有剩余部分(从列 [2] 到行尾)放在另一个单个中字符串,因为我不需要对其进行操作,而只需复制它。
我写道:
import os, sys
import numpy as np
fi = open("input.dat", "r")
fo = open("output.dat", "w")
for line in fi:
line = line.strip()
columns = line.split()
A00 = str(columns[0])
A01 = str(columns[1])
A02 = str(columns[2])
A03 = EVERTHING ELSE UNTIL END OF LINE
有没有简单的方法可以做到这一点?提前致谢。
最佳答案
字符串分割允许限制提取部分的数量,因此您可以执行以下操作:
A00, A01, A02, rest = line.split(" ", 3)
示例:
print "1 2 3 4 5 6".split(" ", 3)
['1', '2', '3', '4 5 6']
关于python - 在python中读取具有可变列数的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39470115/