python匿名函式和遞迴

2021-09-19 08:27:57 字數 1000 閱讀 6247

命名空間:

內建命名空間:

python直譯器一啟動就可以使用的名字儲存在內建命名空間

在啟動器啟動時被載入進記憶體裡

全域性命名空間:

程式從上到下被執行的過程中一次載入進記憶體

放置了我們所有設定的變數名和函式名

區域性命名空間:

函式內部定義的名字

當函式呼叫時,才會產生這個命名空間,隨著函式執行的結束,這個命名空間就消失了

匿名函式:

cale = lambda n,m : n**m

函式名 關鍵字 引數 函式體(返回值)

函式的引數:

形參:定義函式的引數

實參:呼叫函式的引數

函式的返回值:

返回多個值:

有多少返回值就用多少個變數接收

用乙個變數接收得到的是乙個元組

遞迴:概念:

函式自調

最大遞迴深度:

998(包含第一次)—— python從記憶體角度出發做的限制

超出最大深度報的錯誤:

recursionerror: maximum recursion depth exceeded while calling a python object

修改遞迴深度:(一般不用)

import sys

# sys.setrecursionlimit(10000)

n = 0

def story():

global n

n += 1

print(n)

story()

story()

注意:1、如果遞迴的次數太大,就不適合用遞迴來解決問題;

2、遞迴的缺點:佔記憶體

3、遞迴的優點:會讓**變簡單

寫遞迴函式的注意事項:

1、寫遞迴函式必須要有結束條件

2、不要只看到return就認為已經返回了,要看返回操作是在遞迴到第幾層發生的,然後返回給了誰?

python遞迴函式和匿名函式

乙個函式的內部可以呼叫其他函式。但是,如果乙個函式在內部不呼叫其他函式,而是自己本身的話,這個函式就是遞迴函式。例 def fn num if num 1 result 1else result fn num 1 num return result n int input 請輸入乙個正整數 prin...

python匿名函式和遞迴函式

匿名函式格式 lambda 引數 運算 例子 hello lambda a,b a b 匿名函式一半結合內建函式使用 max list,func func匿名函式比如 列表裡面元素是字典 就是可以 list,lambda x x 鍵 min 和max幾乎一樣 map func iterables 對...

匿名函式和遞迴

lambda 匿名函式 為了解決一些簡單的需求而設計的一句話函式 lambda函式不需要def來宣告,一句話就可以宣告出乙個函式 語法 函式名 lambda 引數 返回值 需要注意的是 1.函式的引數可以有多個,多個引數之間用逗號隔開 2.匿名函式不管多複雜,只能寫一行,切邏輯結束後直接返回資料 2...