我有一个文本文件,其中包含一些具有相似字段的记录。
name:
Class:
Subject:
name:
Class:
Subject:
如上所述,此文件可以包含任意数量的记录,我希望将每个记录与相应的字段分开。 以下是我可以达到的目标,以解决这个问题。
def counter(file_path):
count = 0
file_to_read = open(file_path)
text_to_read = file_to_read.readlines()
file_to_read.close()
for line in text_to_read:
if line.find('name') != -1:
count = count + 1
return count
这样我可以算不上。文件中存在的记录,现在我发现很难将整个文本文件拆分为等于no的段。记录。
提前致谢
答案 0 :(得分:3)
def records(file_path):
with open(file_path) as f:
chunk = []
for line in f:
if 'name' in line:
if chunk:
yield chunk
chunk = [line]
else:
chunk.append(line)
if chunk:
yield chunk
for record in records('data.txt'):
print '--------'
print ''.join(record)
打印
--------
name:
Class:
Subject:
--------
name:
Class:
Subject: