如何在 Python 中呼叫帶有引數列表的函式?
函式的目的是使用程式碼塊執行特定任務。在程式設計中,函式透過消除不必要的和過多的程式碼複製和貼上來節省時間。因此,如果需要在不同的地方和經常執行相同的操作,函式將非常有用。
如果你想進行更改,只需要更新該特定函式。因此,你不再需要複製和貼上散佈在整個程式中的相同程式碼片段來查詢它。這遵循軟體開發中的“不要重複自己”原則。每當呼叫函式時,其中的程式碼就會執行。程式碼執行後,函式可能會將值作為引數或預設值返回給呼叫者。
在 Python 中定義函式
Python 函式通常使用以下語法建立:
def function_name(parameters): function body
函式使用“def”關鍵字定義,後跟函式名稱及其括號中括起來的引數。必須記住,這些括號內列出的名稱稱為引數;而透過這些引數傳遞的值稱為引數。
引數用於在函式呼叫期間向函式傳遞資訊。可以透過逗號分隔將多個引數傳遞給函式。
呼叫函式
函式的呼叫方法是使用函式名稱,後跟括號中括起來的其引數。它可以包含零個引數、兩個引數或兩個以上引數。
def my_func(): print("Hello World") def func(a): print(a+a) my_func() #calling the function with no arguments func(2) #calling the function with arguments
輸出
Hello World 4
傳遞多個引數
Python 函式可以接受零個引數、單個引數或多個引數。這些多個引數可以透過逗號分隔傳遞給函式;但在這種情況下,必須在函式定義中定義相同數量的引數。
但是,如果要傳遞的引數數量巨大,宣告每個引數都會變得很困難。因此,使用 **args** 關鍵字,我們可以定義一個引數並將其解包以傳遞多個引數,從而減少麻煩。當沒有單獨的引數可用時,使用解包運算子 *。
使用 *args 關鍵字定義的函式的語法如下:
function_name(*args)
示例
在下面的示例中,我們定義了一個函式“func”,並使用 *args 關鍵字傳遞兩個列表 list1 和 list2 作為其引數。然後,使用“in”運算子迭代顯示這些列表。
def func(*args): # here, *args can be of any name and not just args for i in args: print(i) list1 = [1, 2, 3] list2 = [4, 5, 6] #function call passing two lists func(list1, list2)
輸出
[1, 2, 3] [4, 5, 6]
示例
對於非預定元素,此方法很有用。Python 函式的形式引數不必預先確定,因為我們可以傳遞多個元素。對於未知數量的引數,使用 *args 可以防止程式碼失敗。如果列表中沒有預定元素,可以使用此方法。
# using arguments def func(*arguments): for i in arguments: print(i) # function call func("Hello", "world")
輸出
Hello world