python中的可變引數和關鍵字引數

2021-08-24 20:47:57 字數 673 閱讀 9655

可變引數:在python函式中,可以定義可變引數。顧名思義,可變引數就是傳入的引數個數是可變的,可以是1個、2個到任意個,還可以是0個。定義可變引數和定義普通引數相比,僅僅在引數前面加了乙個*號,例如def cul(*nums)。

關鍵字引數:可變引數允許你傳入0個或任意個引數,這些可變引數在函式呼叫時自動組裝為乙個tuple。而關鍵字引數允許你傳入0個或任意個含引數名的引數,這些關鍵字引數在函式內部自動組裝為乙個dict。在引數前加2個*號即可,例如def cul(**kws)

命名關鍵字引數:如果要限制關鍵字引數的名字,就可以用命名關鍵字引數。命名關鍵字引數需要乙個特殊分隔符*,*後面的引數被視為命名關鍵字引數,例如def cul(name, *, age, city),這樣函式就只接受age和city作為關鍵字引數。但是如果函式定義中已經有了乙個可變引數,後面跟著的命名關鍵字引數就不再需要乙個特殊分隔符*了,例如def cul(name, *args, age, city)

在python中定義函式,可以用必選引數、預設引數、可變引數、關鍵字引數和命名關鍵字引數,這5種引數都可以組合使用。但是請注意,引數定義的順序必須是:必選引數、預設引數、可變引數、命名關鍵字引數和關鍵字引數。

python中可變引數和關鍵字引數總結

coding utf 8 可變引數 def person name,age,args 定義了可變引數args print 傳入的名字為 name print 傳入的年齡為 age print 傳入的可變引數為 args if name main person 張三 24 person 張三 24,家...

python中的可變引數和不可變引數

知識點 python中,萬物皆物件。python中不存在所謂的傳值呼叫,一切傳遞的都是物件的引用,也可以認為是傳址。python在heap中分配的物件分成兩類 可變物件和不可變物件。所謂可變物件是指,物件的內容可變,而不可變物件是指物件內容不可變。不可變 immutable int 字串 strin...

python中的可變引數

在python中當引數的不確定的時候可以用 args和 kwargs來表示可變引數,其中 args沒有key值 kwargs有key值。args python view plain copy print?deffun var args farg,args print arg farg forvalu...