本文實例講述了Python常見排序操作。分享給大家供大家參考,具體如下:
字典排序
按value排序d1 = {"name":"python","bank":"icbc","country":china}# reverse是否倒序,x[1]代表value,x[0]為keyd1 = sorted(d1.items(),lambda x: x[1],reverse=True)按key排序
d1 = {"name":"python","bank":"icbc","country":china}d1 = sorted(d1.items())
列表排序
不去重排序l = [3,2,4,5]l = sorted(l) # 升序# l = sorted(l,reverse=True) # 降序去重排序
l = [3,2,3,5,1]l = set(l) # 使用set集合去重l = list(l) #l = sorted(l) # 排序
字典列表排序
# 以age升序排序L = [ {"name":"python","age":12}, {"name":"ghj","age":10}, {"name":"java","age":17}]L = sorted(L,key=lambda x: x["age"])
根據指定列表的元素順序進行排序
用途:對于取出MySQL與MongoDB的數據時,我們常常需要對數據進行位置更換順序,此時此種排序就能很好的解決我們的問題,對于下面列子中的sortList的數據我們可以使用Redis進行存儲
# 指定列表,假設存儲的是curList中的ID列表sortList = ["4","3","5","2","1"]# 當前列表curList = [{"id":"1","province":"河南"},{"id":"2","province":"河北"},{"id":"3","湖南"},{"id":"4","province":"湖北"},{"id":"5","province":"江西"}]# 根據指定列表中的ID順序,對當前列表進行排序curList = sorted(curList,key = lambda item:sortList.index(item["id"]))print(curList)# [{"id":"4","province":"湖北"},{"id":"3","province":"湖南"},{"id":"5","province":"江西"},{"id":"2","province":"河北"},{"id":"1","province":"河南"}]
PS:這里再為大家推薦一款關于排序的演示工具供大家參考:
在線動畫演示插入/選擇/冒泡/歸并/希爾/快速排序算法過程工具:
http://tools.jb51.net/aideddesign/paixu_ys
更多關于Python相關內容感興趣的讀者可查看本站專題:《Python數據結構與算法教程》、《Python列表(list)操作技巧總結》、《Python編碼操作技巧總結》、《Python函數使用技巧總結》、《Python字符串操作技巧匯總》及《Python入門與進階經典教程》
希望本文所述對大家Python程序設計有所幫助。
新聞熱點
疑難解答