python中sorted函數的理解(對list列表排序,對dict字典排序)


在python手冊中:

sorted(iterable[,cmp,[,key[,reverse=True]]])

作用:Return a new sorted list from the items in iterable.

         第一個參數是一個iterable,返回值是一個對iterable中元素進行排序后的列表(list)。
   可選的參數有三個,cmp、key和reverse。
1)cmp指定一個定制的比較函數,這個函數接收兩個參數(iterable的元素),如果第一個參數小於第二個參數,返回一個負數;如果第一個參數等於第二個參數,返回零;如果第一個參數大於第二個參數,返回一個正數。默認值為None。
2)key指定一個接收iterable的函數,這個函數用於從每個元素中提取一個用於比較的關鍵字。默認值為None。
3)reverse是一個布爾值。如果設置為True,列表元素將被倒序排列。
通常來說,key和reverse比一個等價的cmp函數處理速度要快。這是因為對於每個列表元素,cmp都會被調用多次,而key和reverse只被調用一次。
#coding=utf-8
#例子
items = [ {'name':'李四','age':40}, {'name':'張三','age':30}, {'name':'王五','age':50}, ]
#對items字典按照年齡排序
items1 = sorted(items,key=lambda i:i['age'])

#其中 lambda理解:lambda是一個表達式,i是一個循環變量,范圍是上面的例子和下面的效果一樣
def paixu():
for i in itemes:
i['age']
print i['age']

items1 = sorted(items,key=paixu())

 

Python sorted() 函數

 

Python中sorted()方法的用法  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM