Python學習筆記 函式引數

2021-07-10 15:09:39 字數 1024 閱讀 7565

定義函式的時候,我們把引數的名字和位置確定下來,函式的介面定義就完成了。對於函式的呼叫者來說,只需要知道如何傳遞正確的引數,以及函式將返回什麼樣的值就夠了,函式內部的複雜邏輯被封裝起來,呼叫者無需了解。

python的函式引數十分靈活,可以分為:

必選引數:作為函式呼叫的介面所必須具備的引數。

預設引數:為了方便函式呼叫者呼叫函式,將一些引數設定為預設引數,可以大大簡化函式引數的呼叫。設定預設引數的時候,必須要注意必選引數在前,預設引數在後。

預設引數還有一點需要特別注意:預設引數必須是不可變物件,對於預設引數是可變物件,在沒有實際引數傳入預設引數的情況下,會使用預設引數,而預設引數隸屬於函式開闢的命名空間(local)屬於函式內部的計算空間,對於預設引數是可變物件,每次改變都會在專屬於預設引數的那片記憶體空間修改,並作為函式的內部計算空間得以保留。

可變引數:可變引數顧名思義就是說函式的引數個數是可以動態變化的,可以是乙個、兩個或者零個。傳統傳入多個不確定引數的時候,首先會想到用list或者tuple,然後for迴圈遍歷;使用可變引數,只需要在引數名前+*就可以,實質上在函式內部仍然會把接收的引數作為tuple進行處理,所以源**不需要修改。args是可變引數,args接收的是乙個tuple

關鍵字引數:在可變引數中允許你將一系列引數傳遞進去,可變引數將自動將一系列引數轉變為tuple,而關鍵字引數則允許你將一系列引數轉變為dict,它會將你傳入的「引數名=引數」形式轉換成為dict中鍵值對的形式。關鍵字引數有什麼用?它可以擴充套件函式的功能。kw是關鍵字引數,kw接收的是乙個dict。

引數組合:

在python中定義函式,可以用必選引數、預設引數、可變引數和關鍵字引數,這4種引數都可以一起使用,或者只用其中某些,但是請注意,引數定義的順序必須是:必選引數、預設引數、可變引數和關鍵字引數

Python學習筆記 函式引數

剛開始學習python,看了一些資料,總結記錄一下基本的python函式引數。python中函式定義,有五種引數分類,分別為 位置引數 預設引數 可變引數 關鍵字引數 命名關鍵字引數。1 位置引數 也稱必選引數,也就是函式呼叫時,必須傳遞實參值。這類引數很簡單,如下,呼叫add函式時必須傳值給引數x...

Python學習筆記 函式引數

power x,n 函式有兩個引數 x和n,這兩個引數都是位置引數,呼叫函式時,傳入的兩個值按照位置順序依次賦給引數x和n def power x,n 2 s 1 while n 0 n n 1 s s x return s預設引數必須指向不變物件!設定預設引數時,有幾點要注意 一是必選引數在前,預...

Python學習筆記 Python函式引數

本人使用python已有一段時間,一直沒有時間進行系統學習,現在根據使用過程中記錄的問題,逐個尋找答案,並記錄至此。在使用python的過程中,不可避免的需要閱讀python原始碼,對其中的函式引數一直不是很明白,今天個人實踐一下。def func arg1,arg2 pass 這是我在編碼過程中寫...