如何在 Python 中為函式設定預設引數值?


Python 函式用於實現您希望在程式碼中各個位置重複執行的邏輯。這些函式接受函式引數作為輸入引數。除了透過函式呼叫向其提供引數外,您還可以在 Python 函式中指定預設引數值。

如果您沒有顯式地為給定引數指定引數值,則這些預設值將應用於函式引數。實際提供給函式引數的值稱為引數。

函式引數的語法表示和預設值在 Python 中有所不同。如果在函式呼叫期間未給出任何引數值,則預設值意味著函式引數將假定該值。透過使用賦值 (=) 運算子和語法關鍵字名稱=值來設定預設值。

Python 中的函式

函式是一段程式碼,只有在被呼叫時才會執行。您可以向函式提供包含資料的引數。因此,函式可以返回資料。

示例

讓我們藉助一個示例來了解 Python 中的函式是什麼。

def demo_function(): print("Hello World") demo_function()

輸出

生成的輸出如下所示。

Hello World

Python 函式中的引數

函式接受可以包含資料的引數。函式名稱後跟括號,其中列出引數。只需用逗號分隔每個引數即可新增任意數量的引數。以下示例中的函式僅接受一個引數 (fname)。當呼叫該函式時,會向其傳遞一個名字,並在其中使用它來列印完整的姓名。

帶預設引數的函式

在 Python 函式中,當從函式呼叫中未提供顯式值時,採用預設值的那些引數稱為預設引數。

示例 1

讓我們以一個使用預設引數的簡單 Python 函式為例。

def greet(name="world"): print("Hello,", name) greet()

輸出

生成的輸出如下所示。

Hello, world

示例 2

讓我們建立一個只有一個預設引數的函式。

該指令碼定義了函式 find_square(),其中一個整數作為預設引數。整數引數的預設值設定為 2。該函式將返回作為整數引數傳遞給 find_cube() 方法呼叫的值的立方。

否則,預設值 2 將分配給 find_square() 函式的整數引數,並且該函式將返回 2 的平方,即 8。如果您沒有為 find_cube() 函式的整數引數傳遞任何值,您將觀察到這一點。

讓我們首先使用引數值 10 來呼叫 find_cube() 方法 -

def find_cube(integer1=2): result = integer1 * integer1 * integer1 return result result= find_cube(10) print(result)

輸出

生成的輸出如下所示。

1000

示例 3

讓我們再看一個例子 -

def func(data=[]): data.append(1) return data func() func() def append2(element, foo=None): if foo is None: foo = [] foo.append(element) return foo print(append2(12)) print(append2(43))

輸出

生成的輸出如下所示。

[12]
[43]

多個預設引數

Python 方法也可以有多個預設引數。例如,下面的指令碼中的函式對作為引數提供的整數求和。

示例

如果省略了任何整數,則該函式的預設引數將分別為 12 和 4,如下所示。

def add_integers(int1=12, int2=4): result = int1 + int2 return result result = add_integers() print(result)

輸出

生成的輸出如下所示。

16

更新於:2022-09-16

14K+ 瀏覽量

啟動你的 職業生涯

透過完成課程獲得認證

開始
廣告