我有一点问题:我的.txt文件看起来像这样:
Random heading ---------- John 20 ---------- Jack 18
我想将此信息添加到列表/数组中,如下所示:
`listName = [['John', '20'], ['Jack', '18']]`
所以" ----------"将是分隔列表项的特定符号。
希望我足够清楚。
提前致谢。
答案 0 :(得分:1)
s="""Random heading
----------
John
20
----------
Jack
18"""
print([x.split() for x in s.split("----------")])
[['Random', 'heading'], ['John', '20'], ['Jack', '18']]
您可以使用next(file_object)
跳过标题并拆分余数。
with open(infile) as f:
header = next(f)
spl = (x.split() for x in f.read().split("----------")[1:])
for line in spl:
print(line)
['John', '20']
['Jack', '18']
如果每个部分中只有两行:
lines = [[line.rstrip(), next(f).rstrip()] for line in f if line[0] != "-" and line.strip()]
如果他们总是在“ - ”之后:
lines = [[next(f).rstrip(), next(f).rstrip()] for line in f if line[0] == "-"]