Python中*和**的使用


1、在定義函數的時候,*:接收到的參數會形成一個元組,**:接收到的參數會形成一個字典。如下代碼。

其中args接收必須參數:1, 2, 3, 4,形成元組。kwargs接收關鍵字參數:a=5, b=6, c=7, d=8,形成字典。

def func(*args, **kwargs):
print(args, end=" ")
print(kwargs)
pass

func(1, 2, 3, 4) # 輸出結果是:(1, 2, 3, 4) {}
func(1, 2, 3, 4, a=5, b=6, c=7, d=8) # 輸出結果是:(1, 2, 3, 4) {'a': 5, 'b': 6, 'c': 7, 'd': 8}

2、在定義函數的時候,參數中間使用*,則*號之后的參數必須是關鍵字參數。

def func1(a, b, *, c, d):
    pass

func1(1, 2, c=3, d=4)

 3、字典合並

# 合並字典
dict1 = {'a': 1, 'b': 2}
dict2 = {'c': 3, 'd': 4}
dict3 = {'e': 5, 'f': 6}
dict1.update(dict2)
print(dict1)                    # 輸出結果是:{'a': 1, 'b': 2, 'c': 3, 'd': 4}
print({**dict1, **dict3})       # 輸出結果是:{'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5, 'f': 6}

 

 

 


免責聲明!

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



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