如何格式化这些数据?

我的文本文件目前有这种格式的数据:

------------NEW CALCULATION----------- 1.09532773E-02 9.93E-02 3.76554509E-03 9.93E-02 7.53080333E-03 9.93E-02 1.12954900E-02 9.93E-02 1.50593193E-02 9.92E-02 1.88220125E-02 9.92E-02 2.25832891E-02 9.92E-02 ------------NEW CALCULATION----------- 9.71343145E-02 9.84E-02 0.100812949 9.84E-02 0.104485862 9.83E-02 0.108152986 9.83E-02 0.111814260 9.82E-02 

所以每个新计算的开始处都有一个“—- NEW CALCULATION —-”的消息,然后这个数字分成两列。 目前,我用excel把所有的数字都分成两列,但是我找不到一个方法来把每一列的计算分开。 例如,我想要上面的数据看起来像(分为四列):

 1.09532773E-02 9.93E-02 9.71343145E-02 9.84E-02 3.76554509E-03 9.93E-02 0.100812949 9.84E-02 7.53080333E-03 9.93E-02 0.104485862 9.83E-02 1.12954900E-02 9.93E-02 0.108152986 9.83E-02 1.50593193E-02 9.92E-02 0.111814260 9.82E-02 1.88220125E-02 9.92E-02 2.25832891E-02 9.92E-02 

请注意,这两列没有相同数量的数据点。

有人请帮忙!

特别快速和肮脏的Python脚本:

 import itertools so = "\t" # separator for output infile = "infile" # file input outfile = "outfile" # file output s = open(infile).read() sep = "------------NEW CALCULATION-----------\n" s = [i.strip().split('\n') for i in s.strip(sep).split(sep)] s = [[j.strip().split() for j in i] for i in s] s = list(map(list,list(itertools.zip_longest(*s,fillvalue=['\t\t\t'])))) o = open("outfile","w") for i in [so.join([i for j in s2 for i in j]) for s2 in s]: o.write(i+"\n")