2018年1月12日 星期五

Python: *args and **kwargs

Python的函式允許輸入不同個數的arguments,在輸入變數前加*,可於函式多個argument。例如我們建立一個 test_funct的函式,輸入多個argument,python會以tuple的形式儲存。
另外若在輸入變數前加**,則會以dictionary的方式儲存,稱為keyword arguments。


上個例子裡並沒有輸入keyword arguments,所以只給了個空dictionary,下方例子則有keyword arguments。

要注意當argument與keyword arguments同時出現,順序很重要,若先輸入keyword arguments,就會有錯誤的訊息。

*args**kwargs的用法是慣例,雖然鼓勵這樣用,不過python也是可以使用任意名稱。

沒有留言:

張貼留言