定義過函數(shù)后,就可以在后面程序中使用這一函數(shù)
printsquare_sum(3,4)
python通過位置,知道3對應的是函數(shù)定義中的第一個參數(shù)a,4對應第二個參數(shù)b,然后把參數(shù)傳遞給函數(shù)square_sum。
(Python有豐富的參數(shù)傳遞方式,還有關(guān)鍵字傳遞、表傳遞、字典傳遞等,基礎教程將只涉及位置傳遞)
函數(shù)經(jīng)過運算,返回值25,這個25被print打印出來。
我們再看下面兩個例子
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
第一個例子,我們將一個整數(shù)變量傳遞給函數(shù),函數(shù)對它進行操作,但原整數(shù)變量a不發(fā)生變化。
第二個例子,我們將一個表傳遞給函數(shù),函數(shù)進行操作,原來的表b發(fā)生變化。
對于基本數(shù)據(jù)類型的變量,變量傳遞給函數(shù)后,函數(shù)會在內(nèi)存中復制一個新的變量,從而不影響原來的變量。(我們稱此為值傳遞)
但是對于表來說,表傳遞給函數(shù)的是一個指針,指針指向序列在內(nèi)存中的位置,在函數(shù)中對表的操作將在原有內(nèi)存中進行,從而影響原有變量。(我們稱此為指針傳遞)
以上內(nèi)容為大家介紹了python函數(shù)調(diào)用和參數(shù)傳遞,希望對大家有所幫助,如果想要了解更多Python相關(guān)知識,請關(guān)注IT培訓機構(gòu):千鋒教育。