欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python常見排序操作示例【字典、列表、指定元素等】

 更新時間:2018年08月15日 11:57:48   作者:噴跑的豆子  
這篇文章主要介紹了Python常見排序操作,結(jié)合實例形式總結(jié)分析了Python針對字典、列表及指定元素等常見排序操作實現(xiàn)技巧,需要的朋友可以參考下

本文實例講述了Python常見排序操作。分享給大家供大家參考,具體如下:

字典排序

  • 按value排序
d1 = {"name":"python","bank":"icbc","country":china}
# reverse是否倒序,x[1]代表value,x[0]為key
d1 = 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"])

根據(jù)指定列表的元素順序進行排序

用途:對于取出MySQL與MongoDB的數(shù)據(jù)時,我們常常需要對數(shù)據(jù)進行位置更換順序,此時此種排序就能很好的解決我們的問題,對于下面列子中的sortList的數(shù)據(jù)我們可以使用Redis進行存儲

# 指定列表,假設(shè)存儲的是curList中的ID列表
sortList = ["4","3","5","2","1"]
# 當前列表
curList = [{"id":"1","province":"河南"},{"id":"2","province":"河北"},{"id":"3","湖南"},{"id":"4","province":"湖北"},{"id":"5","province":"江西"}]
# 根據(jù)指定列表中的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:這里再為大家推薦一款關(guān)于排序的演示工具供大家參考:

在線動畫演示插入/選擇/冒泡/歸并/希爾/快速排序算法過程工具:
http://tools.jb51.net/aideddesign/paixu_ys

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python列表(list)操作技巧總結(jié)》、《Python編碼操作技巧總結(jié)》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python入門與進階經(jīng)典教程

希望本文所述對大家Python程序設(shè)計有所幫助。

相關(guān)文章

  • 使用python的chardet庫獲得文件編碼并修改編碼

    使用python的chardet庫獲得文件編碼并修改編碼

    windows和linux采用了不同的編碼,這讓很多人傷透了腦經(jīng),這里我采用了Python的chardet庫獲得代碼的編碼,然后修改編碼
    2014-01-01
  • Python中的隨機函數(shù)random詳解

    Python中的隨機函數(shù)random詳解

    大家好,本篇文章主要講的是Python中的隨機函數(shù)random詳解,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • Selenium定位元素操作示例

    Selenium定位元素操作示例

    這篇文章主要介紹了Selenium定位元素操作,結(jié)合實例形式總結(jié)分析了Selenium通過ID、name、XPath、標簽名稱、類名等進行元素定位操作的相關(guān)實現(xiàn)技巧,需要的朋友可以參考下
    2018-08-08
  • python實現(xiàn)根據(jù)給定坐標點生成多邊形mask的例子

    python實現(xiàn)根據(jù)給定坐標點生成多邊形mask的例子

    今天小編就為大家分享一篇python實現(xiàn)根據(jù)給定坐標點生成多邊形mask的例子,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • Python編程判斷一個正整數(shù)是否為素數(shù)的方法

    Python編程判斷一個正整數(shù)是否為素數(shù)的方法

    這篇文章主要介紹了Python編程判斷一個正整數(shù)是否為素數(shù)的方法,涉及Python數(shù)學運算相關(guān)操作技巧,需要的朋友可以參考下
    2017-04-04
  • Python使用struct庫的用法小結(jié)

    Python使用struct庫的用法小結(jié)

    struct模塊執(zhí)行Python值和以Python?bytes表示的C結(jié)構(gòu)體之間的轉(zhuǎn)換,這可以用于處理存儲在文件中或來自網(wǎng)絡(luò)連接以及其他源的二進制數(shù)據(jù),下面介紹下Python使用struct庫的用法,感興趣的朋友一起看看吧
    2022-05-05
  • Python 條件,循環(huán)語句詳解

    Python 條件,循環(huán)語句詳解

    這篇文章主要介紹了詳解Python中的條件,循環(huán)語句,循環(huán)語句是學習各個編程語言的最基本的基礎(chǔ)知識,需要的朋友可以參考下
    2021-09-09
  • 詳解Python3.6安裝psutil模塊和功能簡介

    詳解Python3.6安裝psutil模塊和功能簡介

    這篇文章主要介紹了詳解Python3.6安裝psutil模塊和功能簡介,詳細的介紹了安裝psutil模塊和該模塊的使用,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05
  • Anaconda安裝之后Spyder打不開解決辦法(親測有效!)

    Anaconda安裝之后Spyder打不開解決辦法(親測有效!)

    這篇文章主要給大家介紹了關(guān)于Anaconda安裝之后Spyder打不開解決辦法,文中將解決的過程介紹的非常詳細,親測有效,對同樣遇到這個問題的朋友具有一定的參考學習價值,需要的朋友可以參考下
    2023-04-04
  • Python用zip函數(shù)同時遍歷多個迭代器示例詳解

    Python用zip函數(shù)同時遍歷多個迭代器示例詳解

    這篇文章主要給大家進行介紹了Python如何用zip函數(shù)同時遍歷多個迭代器,文中給出了示例以及原理和注意事項,相信會對大家的理解和學習很有幫助,有需要的朋友們下面來一起學習學習吧。
    2016-11-11

最新評論