Python 函式引數

2021-07-23 07:08:41 字數 1466 閱讀 6395

1.普通引數。實參與形參的順序必須一一對應,而且不能少傳或者多傳

def

show

(user,password):

print (user)

print (password)

show('csdn','csdn')

#少傳show('csdn')

#報錯:typeerror: show() takes exactly 2 arguments (1 given)

#多傳show('csdn','csdn','csdn')

#報錯:typeerror: show() takes exactly 2 arguments (3 given)

2.預設引數,函式中預設引數在普通引數的後面,且在進行引數傳遞的時候,預設引數可以不用進行指定。

def

show

(user,password='123456'):

print (user),

print (password)

show('csdn')

>>>csdn,123456

show('csdn','csdn')

>>>csdn,csdn

3.指定引數。如果我不想要按照順序傳遞引數應該怎麼辦。

def

show

(user,password):

print (user),

print (password)

show(password='12345',user='csdn')

>>>csdn,12345

4.動態引數。利用元組和字典,一般放在最後面.且元組引數在字典前面,只能這樣(*arg,**argv),不能這樣(**argv,*arg)

def

show

(*arg,**argv):

print (arg,type(arg)),

print (argv,type(argv))

show(23,33,44)

>>>((23, 33, 44), 'tuple'>) ({}, 'dict'>)

show([22,33,44])

>>>(([23, 33, 44],), 'tuple'>) ({}, 'dict'>)

show(22,33,44,k=1,b=2)

>>>((23, 33, 44), 'tuple'>) (, 'dict'>)

#假如我想傳入變數

l=[12,33,44]

d=show(l,d)

>>>(([12, 33, 44], ), 'tuple'>) ({}, 'dict'>) #字典沒有接收到,全給了元組

#解決方法

show(*l,**d)

>>>((12, 33, 44), 'tuple'>) (, 'dict'>)

python引數函式 Python函式引數總結

coding utf 8 整理一下python函式的各種引數型別 位置引數 呼叫函式時,傳入的兩個值按照位置順序依次賦給引數 def power x,n s 1 while n 0 n n 1 s s x return s print power 5,2 預設引數 簡化函式的呼叫 def power...

python 引數 Python函式 引數

python中將函式作為引數,區分將引數直接寫成函式名和函式名 的區別。def fun1 fun print print print fun 執行fun1 fun4 時,fun為函式fun3的返回值x print type fun type fun type fun fun 執行fun1 fun4 ...

函式傳引數 python 函式引數

1.位置引數 最熟悉的一種引數形式,優點 簡單。缺點 傳遞引數不夠靈活 2.預設引數 優點 提高了 的復用性 缺點 容易產生二義性 注意事項 一是必選引數在前,預設引數在後。二是如何設定預設引數。當函式有多個引數時,把變化大的引數放前面,變化小的引數放後面。變化小的引數就可以作為預設引數。def p...