Python 函數中的 4 種參數類型

Python 函數中的 4 種參數類型

在調用函數時,通常會傳遞參數,函數內部的代碼保持不變,針對 不同的參數處理不同的數據

有位置傳參、關鍵字傳參、默認值參數、多值參數等。

1、參數傳遞

形參和實參:

  • 形參定義 函數時的 參數變量
  • 實參調用 函數時,使用的參數變量

參數傳遞的過程,就是 把實參的引用 傳遞給 形參 ,使用實參的值來執行函數體的過程。

在 Python 中,函數的 實參/返回值 都是是靠

引用 來傳遞來的

2、位置實參

按照參數位置,依次傳遞參數,這是最普通的方式。

Python 函數中的 4 種參數類型

3、關鍵字實參

如果不想嚴格按照順序傳遞參數,也可以按關鍵字傳遞。

Python 函數中的 4 種參數類型

4、缺省參數

定義函數時,可以給 某個參數 賦值一個默認值,具有默認值的參數就叫做 缺省參數

  • 調用函數時,如果沒有傳入 缺省參數 的值,則在函數內部使用 參數默認值
  • 將常見的值設置為參數的缺省值,從而 簡化函數的調用
  • 要使用 最常見的值 作為默認值
  • 如果一個參數的值 不能確定,則不應該設置默認值,具體的數值在調用函數時,由外界傳遞!

例如:對列表排序的方法

Python 函數中的 4 種參數類型

缺省參數的定義位置:

  • 必須保證帶有默認值的缺省參數在參數列表末尾!

調用帶有多個缺省參數的函數:

  • 調用函數時,如果有 多個缺省參數需要指定參數名,這樣解釋器才能夠知道參數的對應關係!
Python 函數中的 4 種參數類型

5、多值參數

當函數需要處理的參數個數不確定時,可使用 多值參數

python 中有兩種多值參數:

  • 接收 元組:參數名前加 一個 *
  • 接收 字典:參數名前加 兩個 *

一般在給多值參數命名時,習慣使用以下兩個名字

  • *args — 存放 元組 參數
  • **kwargs — 存放 字典 參數,(kw 即 keyword,kwargs 即 鍵值對參數
Python 函數中的 4 種參數類型

拆包

在上面多值參數傳遞時,實際上使用了拆包功能。

拆包主要用於元組和字典參數的傳遞。

在調用帶有多值參數的函數時,使用拆包簡化參數的傳遞:

  • 直接將一個 元組變量 實參傳遞給元組形參 args
  • 元組變量前,加 *
  • 直接將一個 字典變量 實參傳遞給字典形參 kwargs
  • 字典變量前,加 **
Python 函數中的 4 種參數類型


分享到:


相關文章: