請問**與*是什么意思,能用文字加代碼講解下嗎?非常謝謝
1 回答
斯蒂芬大帝
TA貢獻1827條經驗 獲得超8個贊
**兩個就是,比如2**4,結果就是2的4次方,結果是16
一個*,如果是兩個數字,就是這兩個數字相乘,如2*4,結果為8
*如果是字符串、列表、與一個整數N相乘,返回一個其所有元素重復N次的同類型對象,比如"str"*3將返回字符串"strstrstr"
如果是函數定義中參數前的*表示的是將調用時的多個參數放入中,**則表示將時的關鍵字參數放入一個字典中
如定義以下函數
def func(*args):print(args)
當用func(1,2,3)時,參數args就是(1,2,3)
定義以下函數
def func(**args):print(args)
當用func(a=1,b=2)時,參數args將會是字典{'a':1,'b':2}
如果是在中,*args表示將可對象擴展為函數的參數列表
args=(1,2,3)
func=(*args)
等價于func(1,2,3)
的**表示將字典擴展為關鍵字參數
args={'a':1,'b':2}
func(**args)
等價于函數調用 func(a=1,b=2)
問題能不能明確一點,一個問題已經給了八個答案了添加回答
舉報
0/150
提交
取消
