基本上,我有一个ASCII文件,其中包含各种地震事件的地震信息。每个事件(及其特定信息)都由跳转线与以下内容分开。
我想要的是使用python将这个巨大的文件分割成一系列的子文件,这些子文件包含大约700个事件,每个事件都有自己的信息,并且这些子文件必须按时间顺序进行组织。
原始文件如下:
您可以看到,在第一事件和第二事件之间是一条跳线,因此随后的每个事件。
预先感谢您的帮助
答案 0 :(得分:0)
原则上您可以这样做:
inputFile = "AllEvents.txt" # give the path to the file that contain all the events
eventInfo = "" # create a string to hold event info
eventCounter = 0
fileId = 0
subFile= open("Events" + str(fileId) + ".txt","w+") # create the sub file that you need
with open(inputFile) as fileContent:
for line in fileContent:
if not line.strip(): # strip white spaces to be sure is an empty line
subFile.write(eventInfo + "\n") # add event to the subFile
eventInfo = "" # reinit event info
eventCounter += 1
if eventCounter == 700:
subFile.close()
fileId += 1
subFile = open("Events" + str(fileId) + ".txt","w+")
eventCounter = 0
else:
eventInfo += line
subFile.close()
最后,您将获得一个文件列表,每个文件包含700个事件:Events0.txt,Events1.txt,...