首页 > 代码库 > 分别使用shell和python实现两列排序

分别使用shell和python实现两列排序

有一个文件1.txt如下,要求使用shell和python实现排序,先按照第一列排序,第一列相同再按照第二列排序,并且输出到另外一个文件2.txt

LZdeMacBook-Pro:~ lz$ cat 1.txt

23 d

26 t

12 y

43 h

5 k

12 a

shell实现:

LZdeMacBook-Pro:~ lz$ sort  -k1,1n -k2,2 1.txt > 2.txt

LZdeMacBook-Pro:~ lz$ cat 2.txt

5 k

12 a

12 y

23 d

26 t

43 h

python实现:

sort_lines = sorted(open("1.txt"),key=lambda l:(int(l.split(" ")[0]),l.split(" ")[1]))

open("2.txt","w").write("".join(sort_lines))

 

分别使用shell和python实现两列排序