Python自定義函式的引數

2021-08-21 06:11:26 字數 1204 閱讀 2749

python函式的引數根據型別特點分成四個:必選引數、預設引數、可變引數、關鍵字引數

定義示例**

結果必選引數

普通引數,必傳

def power(x):

s = 1

while x > 1:

x -= 1

s *= x    

return s

print(power(5))

24預設引數

給引數乙個預設值,可以不傳

預設引數必須指向不變物件!!!

def power(x, n=2):

s = 1

while n > 0:

n -= 1

s *= x    

return s

print(power(5))

print(power(5, 3))

25125

可變引數

引數個數不確定

可以傳入0個或任意個引數

這些可變引數在函式呼叫時自動組裝為乙個元祖

def call(*number):

sum = 0

for x in number:

sum += x

return sum

l = [1, 2, 3]

t = 4, 5, 6

print(call(*l))

print(call(*t))615

關鍵字引數

可以傳入0個或任意個含引數名的引數

這些關鍵字引數在函式內部自動組裝為乙個dict

def enroll(**other):

if 'city' in other:

other['city'] = 'hangzhou' 

print('%r' % other)

extra =

enroll(**extra)

print(extra)

當函式中這些引數共存時,是有順序的:必選引數、預設引數、可變引數、關鍵字引數

def f1(a, b, c=0, *args, **kv):

print('a = %r, b = %r, c = %r, args = %r, kv = %r' % (a, b, c, args, kv))

此時預設引數是必須傳的,否則會把可變引數傳進預設引數裡:

f1(1, "bool", *args, **kv)

>>>>>>>

自定義引數 Python自定義函式引數

1.種類 1 位置引數 x就是位置引數 usr bin env python coding utf 8 def power x result x x print result 2 預設引數n就是預設引數 usr bin env python coding utf 8 def power x,n 1 ...

Python自定義函式

可選引數是python的乙個特性,顧名思義就是這個引數是可有可沒有的。如果你學過其他的語言,那麼你會很清楚明白他的不同點的。def fun n,m 1 s 1for i in range 1 n 1 s i return s m m就是可選引數,如果在呼叫他的時候不給m就預設為1 eg1 fun 1...

python自定義函式

在python中有一種自定義函式為匿名函式,可以用lambda關鍵字定義。通過lambda構造的函式可以沒有名稱,最大的特點是在自定義匿名函式時所有 只能在一行內完成,語法如下 lambda parameters function expressionlambda為匿名函式的關鍵起始詞 parame...