定義過函數(shù)后,就可以在后面程序中使用這一函數(shù)
printsquare_sum(3,4)
python通過位置,知道3對(duì)應(yīng)的是函數(shù)定義中的第一個(gè)參數(shù)a,4對(duì)應(yīng)第二個(gè)參數(shù)b,然后把參數(shù)傳遞給函數(shù)square_sum。
(Python有豐富的參數(shù)傳遞方式,還有關(guān)鍵字傳遞、表傳遞、字典傳遞等,基礎(chǔ)教程將只涉及位置傳遞)
函數(shù)經(jīng)過運(yùn)算,返回值25,這個(gè)25被print打印出來。
我們?cè)倏聪旅鎯蓚€(gè)例子
a=1
defchange_integer(a):
a=a+1
returna
printchange_integer(a)
printa
#===(Python中"#"后面跟的內(nèi)容是注釋,不執(zhí)行)
b=[1,2,3]
defchange_list(b):
b[0]=b[0]+1
returnb
printchange_list(b)
printb
第一個(gè)例子,我們將一個(gè)整數(shù)變量傳遞給函數(shù),函數(shù)對(duì)它進(jìn)行操作,但原整數(shù)變量a不發(fā)生變化。
第二個(gè)例子,我們將一個(gè)表傳遞給函數(shù),函數(shù)進(jìn)行操作,原來的表b發(fā)生變化。
對(duì)于基本數(shù)據(jù)類型的變量,變量傳遞給函數(shù)后,函數(shù)會(huì)在內(nèi)存中復(fù)制一個(gè)新的變量,從而不影響原來的變量。(我們稱此為值傳遞)
但是對(duì)于表來說,表傳遞給函數(shù)的是一個(gè)指針,指針指向序列在內(nèi)存中的位置,在函數(shù)中對(duì)表的操作將在原有內(nèi)存中進(jìn)行,從而影響原有變量。(我們稱此為指針傳遞)
以上內(nèi)容為大家介紹了python函數(shù)調(diào)用和參數(shù)傳遞,希望對(duì)大家有所幫助,如果想要了解更多Python相關(guān)知識(shí),請(qǐng)關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。