Python在函式中使用 和 接收元組和列表

2021-09-08 13:50:33 字數 1794 閱讀 3988

當要使函式接收元組或字典形式的引數的時候,有一種特殊的方法,它分別使用*和**字首。這種方法在函式需要獲取可變數量的引數的時候特別有用。

[注意]

[1] 由於在args變數前有*字首,所有多餘的函式引數都會作為乙個元組儲存在args中。如果使用的是**字首,多餘的引數則會被認為是乙個字典的健/值對

[2] 對於def func(*args):,*args表示把傳進來的位置引數儲存在tuple(元組)args裡面。例如,呼叫func(1, 2, 3)args就表示(1, 2, 3)這個元組

[3] 對於def func(**args):,**args表示把引數作為字典的健-值對儲存在dict(字典)args裡面。例如,呼叫func(a='i', b='am', c='wcdj')args就表示這個字典

[4] 注意普通引數與*和**引數公用的情況,一般將*和**引數放在引數列表最後。

[元組的情形]

[python]view plain

copy

#! /usr/bin/python  

# filename: tuple_function.py  

# 2010-7-19 wcdj  

def powersum(power, *args):  

'''''return the sum of each argument raised 

to specified power.'''  

total=0  

for i in args:  

total+=pow(i,power)  

return total  

print 'powersum(2, 3, 4)==', powersum(2, 3, 4)  

print 'powersum(2, 10)==', powersum(2, 10)  

########  

# output  

########  

powersum(2, 3, 4)==25  

powersum(2, 10)==100   

[字典的情形]

[python]view plain

copy

#! /usr/bin/python  

# filename: dict_function.py  

# 2010-7-19 wcdj  

def findad(username, **args):  

'''''find address by dictionary'''  

print 'hello: ', username  

for name, address in args.items():  

print 'contact %s at %s' % (name, address)  

findad('wcdj', gerry='[email protected]', /  

wcdj='[email protected]', yj='[email protected]'  

在**im中的輸出結果:

Python在函式中使用 和 接收元組和列表

當要使函式接收元組或字典形式的引數的時候,有一種特殊的方法,它分別使用 和 字首。這種方法在函式需要獲取可變數量的引數的時候特別有用。注意 1 由於在args變數前有 字首,所有多餘的函式引數都會作為乙個元組儲存在args中。如果使用的是 字首,多餘的引數則會被認為是乙個字典的健 值對。2 對於de...

Python在函式中使用 和 接收元組和列表

推薦乙個大神的人工智慧教程!當要使函式接收元組或字典形式的引數的時候,有一種特殊的方法,它分別使用 和 字首。這種方法在函式需要獲取可變數量的引數的時候特別有用。注意 1 由於在args變數前有 字首,所有多餘的函式引數都會作為乙個元組儲存在args中。如果使用的是 字首,多餘的引數則會被認為是乙個...

Python在函式中使用 和 接收元組和列表

當要使函式接收元組或字典形式的引數的時候,有一種特殊的方法,它分別使用 和 字首。這種方法在函式需要獲取可變數量的引數的時候特別有用。注意 1 由於在args變數前有 字首,所有多餘的函式引數都會作為乙個元組儲存在args中。如果使用的是 字首,多餘的引數則會被認為是乙個字典的健 值對。2 對於de...