python多列排序
python的sort()和sorted()函數可以進行多列排序。在一個文本或者列表有多列時,這是一個很好用的技巧。
首先,看一下待排序的數據
這是一個csv文件,它有6列,我們需要首先對第一列排序,再對第六列排序
46896961,192100485,1,95wf5sm,1863,2014-12-18 15
39716997,265509650,1,94k0ped,6058,2014-11-18 19
40907060,362837862,1,,12819,2014-12-08 04
118420067,331756810,1,,6054,2014-12-13 19
18261127,268564109,1,,2771,2014-12-17 19
17042777,72469526,1,,1863,2014-12-11 23
104414180,141928375,1,,1863,2014-12-09 19
28375714,258478694,1,,8095,2014-12-06 14
132940744,46626071,1,9752qdo,4230,2014-11-27 21
46896961,10879448,1,95wf59q,11279,2014-12-11 23
把數據讀到列表里面,列表調用sort()函數進行排序,sort()函數多列排序的格式為 list.sort(key = lambda x:(第一列,第六列)),因為讀到列表里面的字符串有換行符,可以對第六列進行切片操作。由于第六列是規范的日期格式,所以自己用字符串比較大小是可行的。如果日期不是規格化的,可以把年月日取出,轉為int型比較大小。
代碼實現為:
reader_list.sort(key = lambda x: (x.split(',')[0], x.split(',')[5][-14:-1]))
轉載于:https://www.cnblogs.com/lkprof/p/4415288.html
總結
以上是生活随笔為你收集整理的python多列排序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: asp.net下用js实现弹出子窗口选定
- 下一篇: Python学习系列:PyCharm C