国产毛多水多高潮高清,久热这里只有精品视频6,国内精品久久久久久久久电影网,国产男同志CHINA69,精品999日本久久久影院,人人妻人人澡人人爽人人精品,亚洲中文无码永久免

Python 大家都该知道的高阶函数-优德体育手机端

Python 大家都该知道的高阶函数

2026-01-17 15:04:11投稿人:88體育官方網(wǎng)站APP(內(nèi)蒙古)有限公司圍觀5823263 評論

Python 大家都該知道的高階函數(shù)

函數(shù)式編程現(xiàn)在逐漸被廣大開發(fā)群體接受,越來越多的開發(fā)者們開始使用這種優(yōu)雅的開發(fā)模式,而我們使用函數(shù)式編程最主要的是需要清楚 :

  • 什么是高階函數(shù)(Higher-order Functions)?
  • Python 中高階函數(shù)有哪些 ?要怎么用 ?

高階函數(shù)概念

在函數(shù)式編程中,我們可以將函數(shù)當(dāng)作變量一樣自由使用 。一個函數(shù)接收另一個函數(shù)作為參數(shù) ,這種函數(shù)稱之為高階函數(shù)。

舉個例子:

def high_func(f, arr):    return [f(x) for x in arr]

上面的例子中  , high_func 就是一個高階函數(shù) 。其中第一個參數(shù) f 是一個函數(shù),第二個參數(shù) arr 是一個數(shù)組 ,返回的值是數(shù)組中的所有的值在經(jīng)過 f 函數(shù)計(jì)算后得到的一個列表 。例如:

from math import factorialdef high_func(f, arr):    return [f(x) for x in arr]def square(n):    return n ** 2# 使用python自帶數(shù)學(xué)函數(shù)print(high_func(factorial, list(range(10))))# print out: [1, 1, 2, 6, 24, 120, 720, 5040, 40320, 362880]# 使用自定義函數(shù)print(high_func(square, list(range(10))))# print out: [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

Python 常用高階函數(shù)

如同 java、scala 等語言 ,我們很多常用的高階函數(shù)基本都一致。在開發(fā)中我們經(jīng)常使用的最基本的高階函數(shù)其實(shí)就幾個 ,而我們也可以基于這些函數(shù)去進(jìn)行適當(dāng)?shù)臄U(kuò)展,那么下面開始介紹幾種常用的高階函數(shù) 。

map

Make an iterator that computes the function using arguments from each of the iterables. Stops when the shortest iterable is exhausted.

根據(jù)提供的函數(shù)對指定序列做映射, 并返回映射后的序列 ,定義 :

map(func, *iterables) -->map object
  • function # 序列中的每個元素需要執(zhí)行的操作, 可以是匿名函數(shù)
  • *iterables # 一個或多個序列

正如前面所舉的例子 high_func 函數(shù), map 函數(shù)是 high_func 函數(shù)高階版,可以傳入一個函數(shù)和多個序列