python函式的引數

2022-07-30 04:24:11 字數 1660 閱讀 8445

1.位置引數

位置引數也就是必須要傳的引數:

def

power(x):

return x * x

對於power(x)函式,引數x就是乙個位置引數。

當我們呼叫power函式時,必須傳入有且僅有的乙個引數x

2.預設引數

def power(x, n=2):

s = 1

while n >0:

n = n - 1s = s *x

return s

這樣,當我們呼叫power(5)時,相當於呼叫power(5, 2)

這裡n=2,2就是預設引數,可傳,可不傳

3.可變引數

def calc(*numbers):

sum =0

for n in

numbers:

sum = sum + n *n

return sum

定義可變引數和定義乙個list或tuple引數相比,僅僅在引數前面加了乙個*號。在函式內部,引數numbers接收到的是乙個tuple。但是,呼叫該函式時,可以傳入任意個引數,包括0個引數。

>>> nums = [1, 2, 3]

>>> calc(*nums)

14

*nums表示把nums這個list的所有元素作為可變引數傳進去

4.關鍵字引數

關鍵字引數允許你傳入0個或任意個含引數名的引數,這些關鍵字引數在函式內部自動組裝為乙個dict.

def person(name, age, **kw):

print('

name:

', name, '

age:

', age, '

other:

', kw)

5.命名關鍵字引數

如果要限制關鍵字引數的名字,就可以用命名關鍵字引數,例如,只接收cityjob作為關鍵字引數:

def person(name, age, *, city, job):

print(name, age, city, job)

和關鍵字引數**kw不同,命名關鍵字引數需要乙個特殊分隔符**後面的引數被視為命名關鍵字引數。

如果函式定義中已經有了乙個可變引數,後面跟著的命名關鍵字引數就不再需要乙個特殊分隔符*了:

def person(name, age, *args, city, job):

print(name, age, args, city, job)

6.引數組合問題

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

參考:廖雪峰大神

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 函式的引數

位置引數 def power x,n s 1 while n 0 n n 1 s s xreturn s 以上的函式旨在於實現計算x的n次方 預設引數 def power x,n 2 s 1 while n 0 n n 1 s s x return s以上函式中,預設n 2,這樣情況下,不需要每次輸...