函數(shù)參數(shù)傳遞機(jī)制問題在本質(zhì)上是調(diào)用函數(shù)(過程)和被調(diào)用函數(shù)(過程)在調(diào)用發(fā)生時進(jìn)行通信的方法問題?;镜膮?shù)傳遞機(jī)制有兩
成都創(chuàng)新互聯(lián)公司主要從事網(wǎng)站制作、做網(wǎng)站、網(wǎng)頁設(shè)計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)雙遼,十余年網(wǎng)站建設(shè)經(jīng)驗,價格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):13518219792
種:值傳遞和引用傳遞。
推薦:Python教程
值傳遞(passl-by-value)過程中,被調(diào)函數(shù)的形式參數(shù)作為被調(diào)函數(shù)的局部變量處理,即在堆棧中開辟了內(nèi)存空間以存放由主調(diào)函數(shù)放
進(jìn)來的實參的值,從而成為了實參的一個副本。值傳遞的特點(diǎn)是被調(diào)函數(shù)對形式參數(shù)的任何操作都是作為局部變量進(jìn)行,不會影響主調(diào)函
數(shù)的實參變量的值。
引用傳遞(pass-by-reference)過程中,被調(diào)函數(shù)的形式參數(shù)雖然也作為局部變量在堆棧中開辟了內(nèi)存空間,但是這時存放的是由主調(diào)函
數(shù)放進(jìn)來的實參變量的地址。被調(diào)函數(shù)對形參的任何操作都被處理成間接尋址,即通過堆棧中存放的地址訪問主調(diào)函數(shù)中的實參變量。正
因為如此,被調(diào)函數(shù)對形參做的任何操作都影響了主調(diào)函數(shù)中的實參變量。
更多技術(shù)請關(guān)注Python視頻教程。
什么叫元組拆包?
將元組內(nèi)的元素,依次分配賦值給變量。
拆包有個要求,元組中的元素數(shù)量必須跟接受這些元素的空擋數(shù)一致,否則會報錯:
這樣就只獲取到部分?jǐn)?shù)據(jù)了,這在取函數(shù)返回值時特別有用,比如:
當(dāng)返回值特別多時,_占位符寫起來麻煩,可以用*來處理剩下的元素
*c是個列表,如果沒有足夠的值,就會返回一個空列表
*前綴變量能放在任意位置
*還有一個作用,把元組拆開作為函數(shù)參數(shù),經(jīng)典寫法*args就是這個道理
嵌套元組是指元組中有元組,比如(1, 2, 3, (4, 5)),對于嵌套元組,你可能會想要拆兩遍:
實際上能一步到位:
元組拆包提供了語法糖,對于交換兩個變量的值的常規(guī)寫法:
優(yōu)雅寫法
您說的裝包是用元組,解包是用比如a, b, c = test_list (假設(shè)test_list為[1, 2, 3])