在python中, * 不僅僅代表乘法和列表複製,還常常用於函式的實參傳遞,和形參接收中。
def div(a,b):
print(a/b)
div(*(1,2))
這裡, *號的作用是將可迭代序列拆開,作為函式的實參。
另外, **(兩個*)可以用於字典。
def div(a,b):
print(a/b)
params =
div(**params)
* 號也能放在函式定義中去。作用是接收未知數量的實參,並把這些實參都放到乙個tuple中去。
def div(*a):
print(a)
print(a[0]/a[1])
div(1,2,3)
*號作為形參還有更加強大的功能。
def div(b,*a):
print(b)
print(a)
print(a[0]/a[1])
div(1,2,3)
####
1(2, 3)
0.6666666666666666
我們送入(1,2,3)這三個引數,其中1會傳遞到形參b,剩下的兩沒有去處,只能全部都被a接納了。列印結果在###號下面。
同樣的,** (兩個*)也能作為形參接收實參。
def div(b=1,c=2,**a):
print(b)
print(c)
print(a)
print(a['net'])
params =
div(b=1,c=2,**params)
####12
1
如果**作為形參,那麼代表這裡接收的只能是字典,並且字典作為實參,前面必須要加兩個**。
def div(b=1,c=2,**a):
print(b)
print(c)
print(a)
print(a['net'])
params =
div(b=1,**params)
####12
1
這裡我沒有輸出c的實參的值,但沒有報錯。**params相當於拆開了字典結構。
**params就好像等同於
net=1,alpha=2
python中的 和 的用途
def function with one star t print t,type t def function with two stars d print d,type d 上面定義了兩個函式,分別用了帶乙個星號和兩個星號的引數,它們是什麼意思,執行下面的 function with one s...
python中 和 python中的 和 的用途
def function with one star t print t,type t def function with two stars d print d,type d 上面定義了兩個函式,分別用了帶乙個星號和兩個星號的引數,它們是什麼意思,執行下面的 function with one s...
python中的多個包的用途
1 numpy numpy提供了兩種基本的物件 ndarray和ufunc。ndarray是儲存單一資料型別的多維陣列,而ufunc是能夠對陣列進行處理的函式。n維陣列,一種快速 高效使用記憶體的多維陣列,他提供向量化數 算。可以不需要使用迴圈,就能對整個陣列內的資料進行標準數 算。非常便於傳送資料...