如何以编程方式重新排列文本文件值



问题语句:

Class    Confidence    Xmin   Ymin    Xmax  Ymax
9        0.9745781     45     8        39   49
6        0.9401682     1      1        79   52
3        0.0167890     34     7        90   45

此值将在我的文件中。我想重新排列所有数据,例如:我想比较Xmin值。如果Xmin值很小,则Xmin线将在顶部写入,我的意思是上升顺序。

预期输出:

Class    Confidence    Xmin   Ymin    Xmax  Ymax
6        0.9401682     1      1        79   52
3        0.0167890     34     7        90   45
9        0.9745781     45     8        39   49

我该如何使用Python进行编程操作?所有数据都有文本文件,在执行此操作之后,我想在文本文件中保存相同的格式。

如果file.txt包含:

Class    Confidence    Xmin   Ymin    Xmax  Ymax
9        0.9745781     45     8        39   49
6        0.9401682     1      1        79   52
3        0.0167890     34     7        90   45

然后运行此脚本:

with open('file.txt', 'r') as f_in, 
    open('file_out.txt', 'w') as f_out:
    f_out.write(next(f_in))  # skip the header, write it directly to output file
    f_out.write('n'.join(line.strip() for line in sorted(f_in, key=lambda k: int(k.split()[2]))))

将产生file_out.txt

Class    Confidence    Xmin   Ymin    Xmax  Ymax
6        0.9401682     1      1        79   52
3        0.0167890     34     7        90   45
9        0.9745781     45     8        39   49

最新更新