當前位置:編程學習大全網 - 編程語言 - python 高階函數有哪些

python 高階函數有哪些

1、高階函數

變量可以指向函數,函數的參數可以接收變量,那麽函數可以接收另壹個函數作為參數,這種函數稱為高階函數。

(1)把函數作為實參

(2)把函數作為返回值

2、系統的內置高階函數

(1)map函數:接收兩個參數,壹個是函數,壹個是序列,map將傳入的函數依次作用到序列的每個元素,並且把結果作為新的列表返回

(2)reduce函數:把壹個函數作用到壹個序列上,這個函數必須接收兩個參數,reduce把結果和序列的下壹個元素做累積計算

(3)filter函數:也接收壹個函數和壹個序列,和map函數不同的是,filter函數把傳入的函數依次作用於每個元素,然後返回返回值是True的元素

(4)sorted函數:排序函數

把用戶名按照首字母不區分大小寫排序

(5)sorted()函數按照關鍵字排序

關鍵字:商品個數

(6)sorted()函數按照關鍵字排序,用鍵值來查找

(7)lambda匿名函數:有時候傳參數時不需要顯示自定義的函數,直接傳入匿名函數更方便;冒號前面的x,y表示函數參數,匿名函數不需要擔心函數名的沖突,匿名函數也是壹個函數對象,可以把匿名函數賦值給壹個變量,再利用變量來調用函數,匿名函數也可以作為返回值返回

3、高階函數的應用:

(1)sorted函數:

(2)sorted函數默認是從小到大排序

4、裝飾器

裝飾器就是用來裝飾函數的:想要增加原有函數的功能,但是不希望修改原有函數的定義,在代碼運行期間動態增加功能的方式

(1)此裝飾器的功能:計算函數的運行時間

import functools?

@functools.wraps(f) ##保留原有函數的屬性

運行結果:

(2)此裝飾器的功能:用戶登錄認證

運行結果:

(3)此裝飾器的功能:認證用戶的同時,顯示用戶的轉賬金額

import inspect

inspect.getcallargs()將傳的參數封裝為壹個字典,字典的key值是形式參數,value值是實參

(4)此裝飾器的功能:確保收到的每個參數都是整數,是整數就求和,否則拋出錯誤

(5)此裝飾器的功能:給裝飾器傳參數,是整數和浮點數就求和

python學習網,大量的免費python視頻教程,歡迎在線學習!

  • 上一篇:什麽時候用G41G42啊 – 手機愛問
  • 下一篇:妖怪抓到唐僧後,為什麽都不馬上吃掉?妳看通關文牒上寫了啥?
  • copyright 2024編程學習大全網