日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

Python基础入门:*和**的使用教程

發(fā)布時(shí)間:2025/3/20 python 11 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python基础入门:*和**的使用教程 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Python中*和**是兩個(gè)非常有趣的操作符,*對應(yīng)列表或元祖,**則對應(yīng)字典,主要有以兩類功能。

1.在函數(shù)參數(shù)或賦值中接受不確定數(shù)量的位置參數(shù)和關(guān)鍵字參數(shù)。

位置參數(shù)指按順序傳入的參數(shù),如add(1,2,3), 關(guān)鍵字參數(shù)指以鍵值對傳入的參數(shù)如add(a=1,b=2,c=3)

def func(*args, **kwargs):print("args接收所有位置參數(shù)并得到一個(gè)元祖變量", type(args), args)print("kwargs接收所有的關(guān)鍵字參數(shù)并得到一個(gè)字典", type(kwargs), kwargs)func(1, 2, 3, a=4, b=5, c=6)

在函數(shù)中使用*args和**kwargs可以使得函數(shù)可以接受任意數(shù)量的位置參數(shù)和關(guān)鍵詞參數(shù)。

2.在變量賦值中*同樣可用于保留或拋棄任意數(shù)量的參數(shù),示例如下

a, *_, c = [1,2, 3,4,5,6] print(a, c) print(_, type(_))

_也算一個(gè)變量,一般我不需要使用的變量可用_表示,*_則可以接收第一個(gè)和最后一個(gè)之外的任意多個(gè)變量,結(jié)果是個(gè)元祖。

3. 列表元祖和字典拆包

如果我們定義l = [1,2,3]那么l是1個(gè)列表變量,如果我們需要里面的3個(gè)值1,2,3,就可以使用*l將其拆開。

  • l: 1個(gè)變量, 列表變量
  • *l:3個(gè)值
    如我們有個(gè)函數(shù)如下:
def add(a,b,c):print(a+b+c)

怎么樣能把l中的3個(gè)數(shù)據(jù)不通過索引直接傳入函數(shù)呢?就可以想下面一樣解包直接傳入

''' 學(xué)習(xí)中遇到問題沒人解答?小編創(chuàng)建了一個(gè)Python學(xué)習(xí)交流QQ群:531509025 尋找有志同道合的小伙伴,互幫互助,群里還有不錯(cuò)的視頻學(xué)習(xí)教程和PDF電子書! ''' l = [1,2,3] def add(a,b,c):print(a+b+c)add(*l) # *l 就相當(dāng)于add(1,2,3)

字典的拆包使用**,即把一個(gè)字典變量拆成多個(gè)鍵值對,示例如下。

data = {"a": 1, "b": 2, "c": 3} def add(a,b,c):print(a+b+c)add(**data) # 相當(dāng)于add(a=1,b=2,c=3) 與50位技術(shù)專家面對面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖

總結(jié)

以上是生活随笔為你收集整理的Python基础入门:*和**的使用教程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。