python基礎7 python函式

2022-04-10 16:21:50 字數 1084 閱讀 3144

python基礎知識

一、閉包函式

1、閉包函式的定義:在乙個內部函式中,在對外部作用域(但不是在全域性作用域)的變數進行引用,那麼內部函式就被認為是閉包。

2、閉包函式的特點:自帶作用域和延遲計算

補充:1.函式的作用域關係在函式定義階段就已經固定,與呼叫位置無關。無論函式在何處呼叫,都需要回到定義階段去找對應的作用域關係。

2.globals:是把區域性變數的值宣告為全域性變數的值。

nonlocal:在乙個內部函式中修改外部函式裡的區域性變數的值。

二、裝飾器

1、裝飾器遵循的是開放封閉原則:對擴充套件是開放的對修改是封閉的。

2、裝飾器的本質是:裝飾器可以是任意可呼叫的物件,被裝飾的物件也可以是任意可呼叫的物件。(裝飾器本質就是函式,功能就是為其他函式新增新功能。)

3、裝飾器的功能:在不修改被裝飾物件源**以及呼叫方法的前提下為其新增新功能。

4、裝飾器的原則:不修改源**,不更改源**的呼叫方式。

5、裝飾器的目的:是為了新增新功能

6、裝飾器語法:在被裝飾物件的正上方的前一行@裝飾器名稱。

7、如果有多個裝飾器,載入順序是從下到上,執行順序是從上到下。

三、高階函式

1、高階函式定義:函式接受的引數是個函式名,或者是函式的返回值是個函式名,滿足其中一條就是高階函式。

2、高階函式總結:

當函式接收的引數是乙個函式名                      當函式的返回值是乙個函式名

作用:在不修改函式源**的前提下,為函式新增新功能,            作用:不修改函式的呼叫方式

不足:會改變函式的呼叫方式                        不足:不能新增新功能

四、補充:

1、裝飾器=高階函式+函式巢狀+閉包                無參裝飾器=高階函式+函式巢狀

2、補充1:

from urllib.request import urlopen

print(urlopen('').read())

print(urlopen(

'').read())

from functools import wraps

7 python學習筆記 字典

字典 dict只有乙個引數 字典沒有順序,隨機放置。常用方法 fromkeys s v 建立並返回乙個新的字典 引數s是乙個鍵,v是鍵對應的value,可選。dict1 dict1.fromkeys 1,2,3 dict1.fromkeys 1,2,3 number dict1.fromkeys 1...

7 python 資料型別

1.如果乙個字串包含很多需要轉義的字元,對每乙個字元都進行轉義會很麻煩。為了避免這種情況,我們可以在字串前面加個字首r,表示這是乙個 raw 字串,裡面的字元就不需要轉義了。例如 r 但是r 不能表示多行文字,怎麼解決 2.python在後來新增了對unicode的支援,以unicode表示的字串用...

7 Python基礎 OS模組和函式遞迴

1.給定檔案路徑,深層獲取該路徑下所有檔案和資料夾,並甄別出檔案與資料夾的不同,在輸出結果中給與說明。import os def list all files my path r e python project1 定義返回值列表 all dir file 先找到該路徑的中的內容 my list o...