我需要分割一个地震文件,以便有多个子文件

时间:2019-03-14 09:52:08

标签: python python-3.x split

基本上,我有一个ASCII文件,其中包含各种地震事件的地震信息。每个事件(及其特定信息)都由跳转线与以下内容分开。

我想要的是使用python将这个巨大的文件分割成一系列的子文件,这些子文件包含大约700个事件,每个事件都有自己的信息,并且这些子文件必须按时间顺序进行组织。

原始文件如下:

Screenshot

您可以看到,在第一事件和第二事件之间是一条跳线,因此随后的每个事件。

预先感谢您的帮助

1 个答案:

答案 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,...