- 函數語言程式設計的特點
- 把計算視為函式而不是指令
- 純函數語言程式設計:不需要變數,沒有副作用,測試簡單
- 支援高階函式,程式碼簡潔
- Python支援的函數語言程式設計的特點
- 不是純函數語言程式設計:允許有變數
- 支援高階函式:函式可以作為變數傳入
- 支援閉包:有了閉包就可以返回函式
- 有限度的支援匿名函式
- 高階函式:能接收函式作引數的函式
- 變數可以指向函式
- 函式的引數可以接收變數
- 一個函式可以接收另一個函式作為引數
- 能接收函式作引數的函式就是高階函式
- 示例
- 實現求絕對值的和
[Python]純文字檢視複製程式碼12345In [
4
]:
def
func(x, y, f):
...:
return
f(x)
+
f(y)
...:
In [
5
]: func(
3
,
-
4
,
abs
)
Out[
5
]:
7
2.實現兩個數的開方和[Python]純文字檢視複製程式碼123456In [
6
]:
import
math
In [
7
]:
def
add(x, y, f):...:
return
f(x)
+
f(y)
...:
...:
In [
8
]: add(
9
,
25
, math.sqrt)
Out[
8
]:
8.0
- 實現求絕對值的和
- map() 是Python內建的高階函式,接收一個函式 f 和一個 list,並通過把函式 f 一次作用於 list 的每一個元素上,返回一個新的 list 。
- 示例# 輸出:['Adam', 'Lisa', 'Bart']def format_name(s): return s[0].upper() + s[1:].lower()print map(format_name, ['adam', 'LISA', 'barT'])
- 更多技術資訊可關注:itheimaGZ獲取