1. 程式人生 > >Python學習筆記__4.1章 高階函數

Python學習筆記__4.1章 高階函數

編程語言 Python

# 這是學習廖雪峰老師python教程的學習筆記

1、概覽

我們知道Python內置的求絕對值的函數是abs()

# 調用abs()函數可以獲得一個值

>>> abs(-10)

10

# 那麽,只寫abs本身呢

>>> abs

<built-in function abs>

可見,abs(-10)是函數調用,而abs是函數本身

1.1、將函數賦給變量

將函數賦給變量只有兩種情況:

  • 把函數計算得到的 結果 賦給變量

f=abs(-10)

  • 函數本身 賦給變量,變量此時可以調用函數,即變量可以指向函數

f=abs

1.2、函數名也是變量

函數名其實就是指向函數的變量

對於abs()這個函數,可以把函數名abs看成變量。這意味著,可以用其他的值賦給abs這個變量

abs = 10

賦值過後。再調用abs函數報錯

註:由於abs函數實際上是定義在import builtins模塊中的,所以要讓修改abs變量的指向在其它模塊也生效,要用import builtins; builtins.abs = 10

2、例題

一個簡單的高階函數,計算abs(x)+abs(y)

# -*- coding: utf-8 -*-

def add(x, y, f):

return f(x) + f(y)

print(add(-5, 6, abs)) # abs 函數 作為參數 傳給了 add函數


Python學習筆記__4.1章 高階函數