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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了分别使用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实现两列排序的主要内容,如果未能解决你的问题,请参考以下文章

Java和Python分别实现直接选择排序

如何在python中对两列进行透视和排序?

python实现shell排序

希尔排序ShellSort算法详解Java/Go/Python/JS/C不同语言实现

python实现shell排序

我想用shell排序,一共两列,先用第一列进行降序,然后对第一列相同的数,在第二列进行降序排列,怎么办?