如何在函式中接收元組、列表和字典
阿新 • • 發佈:2019-02-11
在Python,要用函式接收列表或元組或字典,我們可以採用在這幾種型別的引數前面加上 * 或 ** 即可解決。
在函式中接收元組,程式程式碼如下:
#引數前面為 * ,代表這個位置的引數不知道有多少個引數,如果有,則將其儲存為元組
def x(a,b,*c):
print "第一個引數為:" + str(a)
print "第二個引數為:" + str(b)
print "引數c為:" + str(c)
print "第三個引數為:" + str(c[0])
開啟python IDLE,輸入以下命令:
>>> x(2,7)
第一個引數為:2
第二個引數為:7
引數c為:()
Traceback (most recent call last):
File "<pyshell#1>", line 1, in <module>
x(2,7)
File "C:\Users\Administrator\Desktop\123.py", line 6, in x
print "第三個引數為:" + str(c[0])
IndexError: tuple index out of range
>>>
>>>
>>> x(2,7,9)
第一個引數為:2
第二個引數為:7
引數c為:(9,)
第三個引數為:9
>>>
>>>
>>> x(2,3,5,3)
第一個引數為:2
第二個引數為:3
引數c為:(5, 3)
第三個引數為:5
>>>
注意:接收元組和接收列表是一樣的,兩者存在微小的區別,即列表的值可修改,而元組的值不可修改。
在函式中接收元組和字典,程式碼程式如下:
#引數前面為 ** ,代表這個位置的引數不知道有多少個引數,如果有,則將其儲存為字典
def y(*c,**k):
print c
print k
開啟python IDLE,並輸入以下命令:
>>> y(a=1,b=2,c=3)
()
{'a': 1, 'c': 3, 'b': 2}
>>>
>>>
>>> y(1,2,3,4)
(1, 2, 3, 4)
{}
>>>
>>>
>>> y(1,2,3,4,a=1,b=2)
(1, 2, 3, 4)
{'a': 1, 'b': 2}
>>>