国产日韩欧美一区二区三区综合,日本黄色免费在线,国产精品麻豆欧美日韩ww,色综合狠狠操

極客小將

您現在的位置是:首頁 » 原創課程 » Python

課程內容

Python入門課程NO58課 函數的可變參數

極客小將2020-08-27-
“可變”是指參數的數目是變化的,不確定的。在Python中定義函數時,給形參加上一個"*"或"**"的修飾符,那么該形參就是一個可變形參。使用*將實參收集為元組:在Python中定義函數時,在形參前面加一個"*"操作符,那么在執行函數調用時,Python

“可變”是指參數的數目是變化的,不確定的。在Python中定義函數時,給形參加上一個"*"或"**"的修飾符,那么該形參就是一個可變形參。

使用*將實參收集為元組:

在Python中定義函數時,在形參前面加一個"*"操作符,那么在執行函數調用時,Python解釋器會將該參數位置處開始的實參全部收集到一個元組當中。舉例說明:

由于可變形參是從左到右進行參數的收集,所以我們在定義函數時,通常是將可變形參置于普通形參的右邊。

使用**將實參收集為字典:

定義函數時,使用**操作符對形參進行修飾,在調用函數時,Python會將該參數位置處開始的實參收集為字典類型。但是必須以關鍵字參數的方式來進行調用。我們將上面的例子修改一下,如下:

*args與**kwargs

*args 與 **kwargs是可變形參名稱的通用寫法,前者用來將實參打包成一個元組類型,后者用來將實參打包成一個字典類型。我們建議在實際定義函數的過程中,可以沿用這種通用的寫法,也可以自行定義可變參數的名稱。

對實參進行解包:

在定義函數時使用*或**,是將實參收集到元組或字典中。而在調用函數時使用*或**來進行修飾,則是將實參進行解包。所謂的解包,就是將數據集合中的元素取出,然后賦值給對應的參數。通常情況下我們用使用*對可迭代對象進行解包,使用**對字典進行解包

使用*對可迭代對象進行解包:迄今為止學過的可迭代對象有:字符串類型,列表,元組,字典,集合。在對字典,集合等類型進行解包時,解包出的元素為對應的鍵名。在實際開發中,通常使用**操作符對字典進行解包。

使用**對字典進行解包:對字典進行解包時,字典中的鍵名與函數中的形參名一一對應,實參即該鍵名所對應的鍵值。

以下舉例說明:

使用*操作符定義可變參數時,Python會將該形參位置處開始的實參收集到元組中。

使用**操作符定義可變參數時,Python會將該形參位置處開始的實參收集到字典中。

預約試聽課

已有385人預約都是免費的,你也試試吧...

主站蜘蛛池模板: 格尔木市| 扎囊县| 上犹县| 游戏| 正定县| 文化| 浏阳市| 北碚区| 梁山县| 崇礼县| 若尔盖县| 香格里拉县| 郧西县| 田东县| 汤阴县| 达州市| 长顺县| 客服| 怀远县| 忻城县| 临潭县| 雷波县| 凌源市| 疏勒县| 江永县| 张家川| 从江县| 泰和县| 英吉沙县| 阳高县| 平罗县| 永善县| 上虞市| 开封县| 昭苏县| 昌都县| 阿城市| 大埔区| 楚雄市| 宜宾县| 石楼县|