我有一個包含以如下方式的數據的txt文件:Python的不尋常的文件排序
23 1 65 15 19.2
19 2 66 25 25.7
10 3 67 35 16.5
100 4 68 45 10.4
20 5 69 55 6.8
201 6 64 65 9.2
在文件中,各值是從其他使用\噸分離,然後\ n作爲下一行。
我想根據每行的第一個值對這個文件進行排序。 我的預期成果是:
10 3 67 35 16.5
19 2 66 25 25.7
20 5 69 55 6.8
23 1 65 15 19.2
100 4 68 45 10.4
201 6 64 65 9.2
但我得到的實際產量爲:
10 3 67 35 16.5
100 4 68 45 10.4
19 2 66 25 25.7
20 5 69 55 6.8
201 6 64 65 9.2
23 1 65 15 19.2
其採取的值作爲字符串,因此不能將全部的數字值作爲整數。 我嘗試解析,但它不工作。
我的代碼:
with open('filename.txt') as fin:
lines = [line.split() for line in fin]
lines.sort(key=itemgetter(0),reverse=True)
with open('newfile.txt', 'w') as fout:
for i in lines:
fout.write('{0}\t\t\t\t\n'.format('\t\t\t '.join(i)))
如果可能的話請幫忙。
只需管道到'sort -n'也可以做到這一點。 –