Python之可變的引數傳遞

2021-10-02 23:41:26 字數 1498 閱讀 7007

#引數傳遞

1、位置傳參:形參與實參一一對應

2、關鍵字傳參:為避免引數傳遞出錯,採用(引數名=值) 這樣的方式,無需考慮

引數的位置

3、預設值傳參:定義函式時給形參設定預設值

4、可變引數:使用*和*

*表示,可傳入多個引數,在呼叫的時候就可以根據實際需要

起先引數的傳遞

乙個*被自動組裝為元組,兩個*被自動組裝為字典

#位置傳參:

def max_num

(a,b)

:if a > b:

return a

else

:return b

m =max_num(12

,25)print

(m)#關鍵字傳參:

def max_num

(a,b)

:if a > b:

return a

else

:return b

m =max_num

(b=12

,a=5

)print

(m)#預設值傳參:(最右邊那個引數必須有預設值)

def max_num

(b,a=56)

:if a > b:

return a

else

:return b

m =max_num(12

)print

(m)#可變引數*(自動組裝元組)

def animals

(*name)

:print

(name)

print

(type

(name)

) str_name =

''for i in name:

str_name +

= i return str_name

str =

animals

('aa'

,'bb'

,'cc'

,'dd'

,'ee'

)print

(str)

#可變引數*

*(自動組裝列表)

def animals(*

*name)

:print

(name)

print

(type

(name)

) str_name =

''for i in name:

str_name +

= i return str_name

str =

animals

(name1 =

'aa'

,name2 =

'bb'

,name3 =

'cc'

,name4 =

'dd'

,name5 =

'ee'

)print

(str)

Python函式可變引數定義及其引數傳遞方式詳解

python函式可變引數定義及其引數傳遞方式詳解 python中 函式不定引數的定義形式如下 1 func args 傳入的引數為以元組形式存在args中,如 def func args print args func 1,2,3 1,2,3 func 1,2,3 這個方式可以直接將乙個列表的所有元...

va list可變引數傳遞

va list va start 是何意?一 寫乙個簡單的可變引數的c函式 下面我們來 如何寫乙個簡單的可變引數的c函式.寫可變引數的 c函式要在程式中用到以下這些巨集 void va start va list arg ptr,prev param type va arg va list arg ...

python基礎 引數傳遞問題和可變不可變型別

在python中,函式的引數傳遞是 值傳遞 還是 引用傳遞 加引號是因為python中關於引數傳遞不這麼講,但個人覺得可以這麼去理解 要看傳入引數是可變還是不可變物件,當傳入可變物件時即為 引用傳遞 傳入的為不可變物件則是 值傳遞 如下 x 1,2,3 可變引數 print x x 1,2,3 de...