Python匿名函数---排序
一、列表的排序
nums = [1,2,3,5,4,7,87,4,9,56,44,7,5] nums.sort()#默認從小到大排序 nums#結(jié)果為:[1, 2, 3, 4, 4, 5, 5, 7, 7, 9, 44, 56, 87] nums = [1,2,3,5,4,7,87,4,9,56,44,7,5] nums.sort(reverse=True)#從大到小排序 nums#結(jié)果為:[87, 56, 44, 9, 7, 7, 5, 5, 4, 4, 3, 2, 1] nums = [1,2,3,5,4,7,87,4,9,56,44,7,5] nums.reverse()#反轉(zhuǎn) nums#結(jié)果為:[5, 7, 44, 56, 9, 4, 87, 7, 4, 5, 3, 2, 1]二、字典排序
如果對字典進行排序需要指出按哪個key排序,sort方法里面的參數(shù)為key=lambda x:x['age']
第一個x,此時會為infors列表中的每個鍵值對,冒號后面的x[‘a(chǎn)ge’]表示通過age這個鍵(key)所對應(yīng)的值(value)所排序,說白了就是按照age對應(yīng)的值所排序(sort默認從小到大排序)。sort的有關(guān)參數(shù)可以參照上面的例子進行不同的排序方式進行排序。
當(dāng)然,這里也不僅僅局限于age這個鍵的排序,也可以通過name這個鍵進行排序,只不過name對應(yīng)的值是字符串,最終的結(jié)果會通過ASCII碼進行比較排序輸出。
三、匿名函數(shù)當(dāng)參數(shù)使用
當(dāng)你想實現(xiàn)兩個數(shù)相加,又想實現(xiàn)兩個數(shù)相乘,還行實現(xiàn)兩個數(shù)相減等一系列操作時,當(dāng)然你可以多定義幾個函數(shù)即可。這里使用匿名函數(shù)來實現(xiàn),只需要改變lambda中的表達式即可通過一個函數(shù)實現(xiàn)用戶想要的操作,即匿名函數(shù)充當(dāng)實參。
def beyond(a,b,func):result = func(a,b)return resultnum1 = beyond(21,22,lambda x,y:x+y) num2 = beyond(21,22,lambda x,y:x*y) num3 = beyond(21,22,lambda x,y:x-y)print(num1)#結(jié)果為:43 print(num2)#結(jié)果為:462 print(num3)#結(jié)果為:-1四、驗證下Python是動態(tài)語言
所謂的靜態(tài)語言就是需要先確定功能再去執(zhí)行
而動態(tài)語言是當(dāng)程序?qū)懲曛?#xff0c;不確定加了什么東西,真正運行的那一剎那才確定你要執(zhí)行什么,這就是動態(tài)語言。
C是靜態(tài)語言,程序當(dāng)前需要調(diào)用什么是很明確的,編譯什么也都確定,在某個地方需要調(diào)用什么也是明確的,已經(jīng)寫好的。
而Python是動態(tài)語言,如果沒有出現(xiàn)語法錯誤,將來在正真執(zhí)行的時候,當(dāng)什么時候執(zhí)行,什么時候才會定義某些東西。
總結(jié)
以上是生活随笔為你收集整理的Python匿名函数---排序的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 新乡看子宫内膜异位症最好的医院推荐
- 下一篇: 快把我哥带走剧情介绍