python高階三 函式

2021-12-29 19:39:31 字數 1019 閱讀 7632

在python中函式用關鍵字def宣告,引數用逗號隔開,另外需要注意的是函式沒有返回型別.python函式不指定特定的返回型別,甚至不需要指定是否返回乙個值.但實際上,每乙個python函式都會返回一 個值.如果執行了return語句,那麼它會返回這個值,否則,它返回乙個none.none是python的null值.

舉例來說:

需要注意的是分號,以及強縮排。

python中預設引數與c++中預設引數基本類似,在函式呼叫時若沒有給該引數賦值,則該引數呼叫預設賦值,然而當給定引數名時,呼叫引數的順序就不重要了(一般情況下,順序很重要),我們來看一下一段**:

在函式定義內宣告區域性變數的時候,它與函式外具有相同名稱的其他變數沒有任何關係,即變數名稱對於函式來說是區域性的。

為乙個定義在函式外的變數賦值,需告訴python這個變數名不是區域性的,而是全域性 的。使用global語句完成這一功能,表明使用的變數為外面的塊定義的。沒有global語句,是不可能為定義在函式外的變數賦值的

在python中,當我們需要可變引數的時候該怎麼辦呢?別急,我們有*,來看乙個例子:

通過這個例子,我們可以看出在python中的可變引數用法,記得千萬別把這個當成指標了哦。

如果乙個函式定義中的最後乙個形參有 ** (雙星號)字首,所有正常形參之外的其他的關鍵字引數都將被放置在乙個字典中傳遞給函式,比如:

Python高階函式 三

排序演算法在各種程式中都有廣泛的應用,排序的核心就是按照某種規則比較所謂的 大小 然後交換位置,如果是數字,我們可以直接比較,但如果是字串或者兩個字典呢?直接比較數學上的大小是沒有意義的,因此,比較的過程必須通過函式抽象出來。python的內建sorted函式就可以對list進行排序。sorted ...

python 函式高階 python 函式高階

形參角度 萬能引數 動態接收位置引數 args 動態接收關鍵字引數 kwargs 的魔性用法 函式定義時 代表聚合。他將所有的位置引數 聚合成乙個元組,賦值給了args 函式定義時 將所有的關鍵字引數聚合成乙個字典中,將這個字典賦給了 kwargs 和 在函式的呼叫時 代表打散 僅限關鍵字引數 de...

Python複習筆記(三)函式高階

在 python 中,列表變數呼叫 本質上是在執行列表變數的 extend 方法,不會修改變數的引用 這裡,難理解的就是generator和函式的執行流程不一樣。函式是順序執行,遇到return語句或者最後一行函式語句就返回。而變成generator的函式,在每次呼叫next 的時候執行,遇到yie...