python 通過關鍵字排序字典

2021-10-02 03:52:23 字數 1004 閱讀 9650

q:

有乙個字典列表,想根據某個或某幾個字典字段排序這個列表

a:可以使用operator模組的itemgetter函式來實現

rows = [ , 

, ,

]

**示例

from operator import itemgetter 

rows_by_fname = sorted(rows, key=itemgetter('fname'))

rows_by_uid = sorted(rows, key=itemgetter('uid'))

print(rows_by_fname) print(rows_by_uid)

[, ,

, ]

[, ,

, ]

itemgetter()函式也支援多個keys

rows_by_lfname = sorted(rows, key=itemgetter('lname','fname')) 

print(rows_by_lfname)

[, ,

, ]

itemgetter()有時也可以使用lambda表示式來替代:

rows_by_fname = sorted(rows, key=lambda r: r['fname']) 

rows_by_lfname = sorted(rows, key=lambda r: (r['lname'],r['fname']))

但,使用itemgetter()方式會快一些,如果對效能要求比較高,可以優先使用itemgetter()方式

itemgetter() 同樣使用於min()和max()等函式

min(rows, key=itemgetter('uid'))

max(rows, key=itemgetter('uid'))

jQuery php通過關鍵字搜尋並以列表形式顯示

html jquery php 該方法是通過 關鍵字對陣列 快取檔案進行 模糊查詢,並非是直接通過關鍵字查詢資料庫獲取資料 通過關鍵字獲取資料 試題 public function getsearchkeywords 獲取快取中的七牛雲資料,並通過關鍵字對陣列模糊查詢 param string ke...

Python關鍵字排序

一 當排序關鍵字多於1個時,我們使用lambda表示式來描述關鍵字key arr 1,4,3 1,3,3 2,1,4 3,5,1 arr.sort key lambda s s 0 s 1 兩個關鍵字排序 print arr 可以看到輸出結果是根據列表中元組的第一項和第二項排序 1,3,3 1,4,...

通過關鍵字定位頁面內容,類似於ctrl f查詢功能

這個功能,做的時候,想了很多種辦法。一種是,頁面查詢的時候,傳入要查詢的值,呼叫jquery的方法,找到後,替換查到的值,加樣式。這種方法的弊端就是如果你在屬性裡面有要搜尋的資訊,就會替換屬性裡面的內容,導致內容不準確。如xx這個時候,你只想替換標籤裡面的內容,不想替換sx的值,但是會替換。另一種,...