站長在線Python精講:在Python函數(shù)中理解形式參數(shù)和實際參數(shù)
歡迎你來到站長在線的站長學(xué)堂學(xué)習(xí)Python知識,本文學(xué)習(xí)的是《在Python函數(shù)中理解形式參數(shù)和實際參數(shù)》。本文的主要內(nèi)容有:Python中形式參數(shù)的概念和特點,Python中實際參數(shù)的概念和特點,實際參數(shù)的值傳遞和引用傳遞。
永久美國免備案虛擬主機1元1天,15元1月,100元1年,1000元永久
站長在線旗下答案網(wǎng)站,全站所有題目,免費查看答案和答案解析
歡迎你來到站長在線的站長學(xué)堂學(xué)習(xí)python知識,本文學(xué)習(xí)的是《在Python函數(shù)中理解形式參數(shù)和實際參數(shù)》。本文的主要內(nèi)容有:Python中形式參數(shù)的概念和特點,Python中實際參數(shù)的概念和特點,實際參數(shù)的值傳遞和引用傳遞。
我們在上一節(jié)課中,講到了函數(shù)的調(diào)用。在Python中調(diào)用函數(shù)時,大多數(shù)情況下,主調(diào)函數(shù)和被調(diào)用函數(shù)之間有數(shù)據(jù)傳遞關(guān)系,這就是有參數(shù)的函數(shù)形式。函數(shù)參數(shù)的作用是傳遞數(shù)據(jù)給函數(shù)使用,函數(shù)利用接收的數(shù)據(jù)進行具體的操作處理。函數(shù)參數(shù)在定義函數(shù)時放在函數(shù)名稱后面的一對小括號中:
def a (x):
其中,a是函數(shù)名,x是函數(shù)參數(shù)。
我們先來了解形式參數(shù)和實際參數(shù)
在使用函數(shù)時,經(jīng)常會用到形式參數(shù)和實際參數(shù)。兩者都叫作參數(shù)。
1、Python中形式參數(shù)的概念和特點
概念:在定義函數(shù)時,函數(shù)名后面括號中的參數(shù)為“形式參數(shù)”。
特點:形式參數(shù)就是變量名。
如:def a(x) 其中x就是形式參數(shù)。
2、Python中實際參數(shù)的概念和特點
概念:在調(diào)用一個函數(shù)時,函數(shù)名后面括號中的參數(shù)為“實際參數(shù)”。也就是將函數(shù)的調(diào)用者提供給函數(shù)的參數(shù)稱為實際參數(shù)。
特點:實際參數(shù)就是變量值。
如:def a('python') 其中,python就是實際參數(shù)。
3、實際參數(shù)的值傳遞和引用傳遞。
根據(jù)實際參數(shù)的類型不同,可以分為:
3.1、將實際參數(shù)的值傳遞給形式參數(shù)。
3.2、將實際參數(shù)的引用傳遞給形式參數(shù)。
其中:
當(dāng)實際參數(shù)為不可變對象時,進行的是值傳遞;
當(dāng)實際參數(shù)為可變對象時,進行的是引用傳遞。
實際上,值傳遞和引用傳遞的基本區(qū)別就是:
進行值傳遞后,改變形式參數(shù)的值,實際參數(shù)的值不變;
進行引用傳遞后,改變形式參數(shù)的值,實際參數(shù)的值也一同改變。
例如,定義一個名稱為demo的函數(shù),然后為demo()函數(shù)傳遞一個字符串類型的變量作為參數(shù)(代表值傳遞),并在函數(shù)調(diào)用前后分別輸出該字符串變量,再為demo()函數(shù)傳遞一下列表類型的變量作為參數(shù)(代表引用傳遞),并在函數(shù)調(diào)用前后分別輸出該列表。代碼如下:
#定義函數(shù)
def demo(obj):
print("原值:",obj)
obj += obj
#調(diào)用函數(shù)
print("=========值傳遞========")
mot="人生苦短,我用Pyhon。"
print("函數(shù)調(diào)用前:",mot)
demo(mot)
#采用不可變對象--字符串
print("函數(shù)調(diào)用后: ",mot)
print("=========引用傳遞========")
#采用 可變對象--列表
list1 =["優(yōu)雅","明確","簡單"]
print("函數(shù)調(diào)用前: ",list1)
demo(list1)
print("函數(shù)調(diào)用后: ",list1)
運行代碼如下:
=========值傳遞========
函數(shù)調(diào)用前: 人生苦短,我用Pyhon。
原值: 人生苦短,我用Pyhon。
函數(shù)調(diào)用后: 人生苦短,我用Pyhon。
=========引用傳遞========
函數(shù)調(diào)用前: ['優(yōu)雅', '明確', '簡單']
原值: ['優(yōu)雅', '明確', '簡單']
函數(shù)調(diào)用后: ['優(yōu)雅', '明確', '簡單', '優(yōu)雅', '明確', '簡單']
>>>
從上面的執(zhí)行結(jié)果中可以看出,在進行值傳遞時,改變形式參數(shù)的值后,實際參數(shù)的值不改變;在進行引用傳遞時,改變形式參數(shù)的值后,實際參數(shù)的值也發(fā)生改變。
函數(shù)定義時參數(shù)列表中的參數(shù)就是形式參數(shù),而函數(shù)調(diào)用時傳遞進來的參數(shù)就是實際參數(shù)。
就像劇本選主角一樣,劇本的角色相當(dāng)于形式參數(shù),而演角色的演員就相當(dāng)于實際參數(shù)。
到此為止,本文《在Python函數(shù)中理解形式參數(shù)和實際參數(shù)》主要講到的Python中形式參數(shù)的概念和特點,Python中實際參數(shù)的概念和特點,實際參數(shù)的值傳遞和引用傳遞。
在下一個知識點,站長在線就來講解《在Python函數(shù)中理解參數(shù)傳遞的位置參數(shù)》。關(guān)注站長在線,學(xué)習(xí)Python不迷路!歡迎你對站長在線進行關(guān)注,評論,點贊,分享、轉(zhuǎn)發(fā)!
本文地址:http://003188.cn/pythonxscshsjcs.html
阿里云虛擬主機1G空間,120元一年
香港、美國虛擬主機100元一年,1000元永久
騰訊云雙十一0.4折起,2核8G5M三年僅700元,2核4G8M三年僅198元
猜你喜歡