如何在Python中將可選引數或關鍵字引數從一個函式傳遞到另一個函式?


要將可選引數或關鍵字引數從一個函式傳遞到另一個函式,請使用函式引數列表中的 * 和 ** 說明符收集引數。但是,首先,要知道 Python 中的 *args 和 **kwargs 是什麼。讓我們來了解一下它們:

Python 中的可變長度/任意引數 (*args)

示例

當您事先不知道要傳遞的引數數量時,這些引數就是可變長度引數。在定義函式時,在引數名稱前加上星號 *。讓我們來看一個例子:

def demo(*car): print("Car 1 = ",car[0]) print("Car 2 = ",car[1]) print("Car 3 = ", car[2]) print("Car 4 = ", car[3]) # call demo("Tesla", "Audi", "BMW", "Toyota")

輸出

('Car 1 = ', 'Tesla')
('Car 2 = ', 'Audi')
('Car 3 = ', 'BMW')
('Car 4 = ', 'Toyota')

Python 中的任意關鍵字引數 (**kwargs)

當您事先不知道要傳遞的關鍵字引數數量時,這些引數就是任意關鍵字引數。

示例

讓我們來看一個例子:

def demo(**c): print("Car Name: "+c["name"]) print("Car Model: "+c["model"]) # call demo(name = "Tesla", model = "2022")

輸出

Car Name: Tesla
Car Model: 2022

將可選引數或關鍵字引數從一個函式傳遞到另一個函式

要傳遞,請使用函式引數列表中的 * 和 ** 收集引數。透過這種方式,您將得到一個元組形式的位置引數和一個字典形式的關鍵字引數。使用 * 和 ** 在呼叫另一個函式時傳遞這些引數:

def f(a, *args, **kwargs): ... kwargs['width'] = '14.3c' ... g(a, *args, **kwargs)

更新於:2022年9月19日

933 次瀏覽

啟動您的職業生涯

完成課程獲得認證

開始學習
廣告