python函數(shù)傳遞參數(shù)的方法

小編給大家分享一下python函數(shù)傳遞參數(shù)的方法,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討方法吧!

創(chuàng)新互聯(lián)專業(yè)成都網(wǎng)站建設(shè)、做網(wǎng)站,集網(wǎng)站策劃、網(wǎng)站設(shè)計(jì)、網(wǎng)站制作于一體,網(wǎng)站seo、網(wǎng)站優(yōu)化、網(wǎng)站營銷、軟文推廣等專業(yè)人才根據(jù)搜索規(guī)律編程設(shè)計(jì),讓網(wǎng)站在運(yùn)行后,在搜索中有好的表現(xiàn),專業(yè)設(shè)計(jì)制作為您帶來效益的網(wǎng)站!讓網(wǎng)站建設(shè)為您創(chuàng)造效益。

Python中,函數(shù)參數(shù)由實(shí)參傳遞給形參的過程,是由參數(shù)傳遞機(jī)制來控制的。根據(jù)實(shí)際參數(shù)的類型不同,函數(shù)參數(shù)的傳遞方式分為值傳遞和引用傳遞(又稱為地址傳遞)。

Python函數(shù)參數(shù)的值傳遞機(jī)制

所謂值傳遞,實(shí)際上就是將實(shí)際參數(shù)值的副本(復(fù)制品)傳入函數(shù),而參數(shù)本身不會(huì)受到任何影響。

下面程序演示了函數(shù)參數(shù)進(jìn)行值傳遞的效果:

def swap(a , b) :
    # 下面代碼實(shí)現(xiàn)a、b變量的值交換
    a, b = b, a
    print("swap函數(shù)里,a的值是", \
        a, ";b的值是", b)
a = 6
b = 9
swap(a , b)
print("交換結(jié)束后,變量a的值是", \
    a , ";變量b的值是", b)

運(yùn)行上面程序,將看到如下運(yùn)行結(jié)果:

swap函數(shù)里,a的值是 9 ;b的值是 6
交換結(jié)束后,變量a的值是 6 ;變量b的值是 9

從上面的運(yùn)行結(jié)果來看,在 swap() 函數(shù)里,a 和 b 的值分別是 9、6,交換結(jié)束后,變量 a 和 b 的值依然是 6、9。從這個(gè)運(yùn)行結(jié)果可以看出,程序中實(shí)際定義的變量 a 和 b,并不是 swap() 函數(shù)里的 a 和 b 。

Python函數(shù)參數(shù)的引用傳遞

如果實(shí)際參數(shù)的數(shù)據(jù)類型是可變對(duì)象(列表、字典),則函數(shù)參數(shù)的傳遞方式將采用引用傳遞方式。需要注意的是,引用傳遞方式的底層實(shí)現(xiàn),采用的依然還是值傳遞的方式。

下面程序示范了引用傳遞參數(shù)的效果:

def swap(dw):
    # 下面代碼實(shí)現(xiàn)dw的a、b兩個(gè)元素的值交換
    dw['a'], dw['b'] = dw['b'], dw['a']
    print("swap函數(shù)里,a元素的值是",\
        dw['a'], ";b元素的值是", dw['b'])
dw = {'a': 6, 'b': 9}
swap(dw)
print("交換結(jié)束后,a元素的值是",\
    dw['a'], ";b元素的值是", dw['b'])

運(yùn)行上面程序,將看到如下運(yùn)行結(jié)果:

swap函數(shù)里,a元素的值是 9 ;b元素的值是 6
交換結(jié)束后,a元素的值是 9 ;b元素的值是 6

從上面的運(yùn)行結(jié)果來看,在 swap() 函數(shù)里,dw 字典的 a、b 兩個(gè)元素的值被交換成功。不僅如此,當(dāng) swap() 函數(shù)執(zhí)行結(jié)束后,主程序中 dw 字典的 a、b 兩個(gè)元素的值也被交換了。

這很容易造成一種錯(cuò)覺,即在調(diào)用 swap() 函數(shù)時(shí),傳入 swap() 函數(shù)的就是 dw 字典本身,而不是它的復(fù)制品。

看完了這篇文章,相信你對(duì)python函數(shù)傳遞參數(shù)的方法有了一定的了解,想了解更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!

新聞標(biāo)題:python函數(shù)傳遞參數(shù)的方法
本文地址:http://www.muchs.cn/article12/pgdgdc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗(yàn)、虛擬主機(jī)動(dòng)態(tài)網(wǎng)站、網(wǎng)站導(dǎo)航企業(yè)網(wǎng)站制作、響應(yīng)式網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)