Python的5種傳參姿勢,兩分鐘就能了解

2021-09-19 19:21:34 字數 763 閱讀 2343

位置實參

實參和形參的位置是關聯對應的。乙個實參對應乙個相應位置的形參。

關鍵字實參

實參以 key=value 的形式傳遞,因為已經指明了將 value 傳給哪個引數,所以位置順序就無關緊要了。

預設值

可以給形參指定預設值,當沒有提供實參的時候,就會使用預設值。

利用這個特性可以實現可選引數。

傳遞任意數量的實參

使用形參 *topping 可以使函式能夠傳遞任意數量的實參。

傳遞的引數會被 封裝到乙個元組中 。

傳遞任意數量的關鍵字實參

使用形參 **kwargs 可以使函式能夠傳遞數量的 關鍵字實參 。

傳遞的引數會被封裝成 鍵值對 ,即 字典 。

2分鐘了解Python的5種傳參姿勢

稍微總結一下 python 函式傳遞引數的方式。實參和形參的位置是關聯對應的。乙個實參對應乙個相應位置的形參。實參以key value的形式傳遞,因為已經指明了將value傳給哪個引數,所以位置順序就無關緊要了。可以給形參指定預設值,當沒有提供實參的時候,就會使用預設值。利用這個特性可以實現可選引數...

兩種傳參方式的對比

這種方式使用變數 常量 陣列元素作為函式引數,實際是將實參的值複製到形參相應的儲存單元中,即形參和實參分別占用不同的儲存單元,這種傳遞方式稱為 引數的值傳遞 或者 函式的傳值呼叫 值傳遞的特點是單向傳遞,即主調函式呼叫時給形參分配儲存單元,把實參的值傳遞給形參,在呼叫結束後,形參的儲存單元被釋放,而...

pytest傳參的兩種方式?

在測試用例上加註解 pytest.mark.parametrize loginame,password 值1,值2 值1,值2 fixture傳參。1 在測試用例上加註解 pytest.mark.parametrize login data data2,indirect true login dat...