python 中 *args 和 **kwargs 的區別


在 python 中,*args 和 **kwargs 都代表 1個 或 多個 參數的意思。*args 傳入tuple 類型的無名參數,而 **kwargs 傳入的參數是 dict 類型。下文舉例說明。

 

 1.*args 的用法,以下測試代碼:

def test(*args):  
    print(args)
    for i in args:
        print(i)

test(1,2,3)

# 輸出值分別為
# (1,2,3)
# 1
# 2
# 3

 

 2.**kwargs 的用法,以下測試代碼:

def test(**kwargs):
    print(kwargs)
    keys = kwargs.keys()
    value = kwargs.values()
    print(keys)
    print(value)

test(a=1,b=2,c=3,d=4)

# 輸出值分別為
# {'a': 1, 'b': 2, 'c': 3, 'd': 4}
# dict_keys(['a', 'b', 'c', 'd'])
# dict_values([1, 2, 3, 4])

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM