站長在線Python精講:在Python函數(shù)中參數(shù)傳遞的位置參數(shù)詳解
歡迎你來到站長在線的站長學(xué)堂學(xué)習(xí)Python知識,本文學(xué)習(xí)的是《在Python函數(shù)中參數(shù)傳遞的位置參數(shù)詳解》。本文的主要內(nèi)容有:實參和形參數(shù)量必須與定義時一致和實參和形參位置必須與定義時一致。
永久美國免備案虛擬主機1元1天,15元1月,100元1年,1000元永久
站長在線旗下答案網(wǎng)站,全站所有題目,免費查看答案和答案解析
歡迎你來到站長在線的站長學(xué)堂學(xué)習(xí)python知識,本文學(xué)習(xí)的是《在Python函數(shù)中參數(shù)傳遞的位置參數(shù)詳解》。本文的主要內(nèi)容有:實參和形參數(shù)量必須與定義時一致和實參和形參位置必須與定義時一致。
位置參數(shù),有時也稱必備參數(shù),指的是必須按照正確的順序?qū)?a href="http://003188.cn/tag/shijicanshu/" data-type="mip" data-title="實際參數(shù)" target="_blank" title="實際參數(shù)">實際參數(shù)傳到函數(shù)中,換句話說,調(diào)用函數(shù)時傳入實際參數(shù)的數(shù)量和位置都必須和定義函數(shù)時保持一致。
1.實參和形參數(shù)量必須與定義時一致
在調(diào)用函數(shù)時,指定的實際參數(shù)的數(shù)量必須與形式參數(shù)的數(shù)量一致,否則將拋出TypeError異常,提示缺少必要的位置參數(shù)。如:
#可寫函數(shù)說明
def printme( str ):
"打印任何傳入的字符串"
print (str)
return
# 調(diào)用 printme 函數(shù),不加參數(shù)會報錯
printme()
運行結(jié)果為:
Traceback (most recent call last):
File "D:\Python\Python310\Doc\000.py", line 8, in <module>
printme()
TypeError: printme() missing 1 required positional argument: 'str'
>>>
2.實參和形參位置必須與定義時一致
在調(diào)用函數(shù)時,指定的實際參數(shù)的位置必須與形式參數(shù)的位置一致,否則將產(chǎn)生以下兩種結(jié)果。
2.1、拋出TypeError異常
拋出異常的情況主要是因為實際參數(shù)的類型與形式參數(shù)的類型不一致,并且在函數(shù)中,這兩種類型不能正常轉(zhuǎn)換。如:
def div (height,width):
return height*width/2
print(div("站長在線",3))
運行結(jié)果:
Traceback (most recent call last):
File "D:\Python\Python310\Doc\000.py", line 3, in <module>
print(div("站長在線",3))
File "D:\Python\Python310\Doc\000.py", line 2, in div
return height*width/2
TypeError: unsupported operand type(s) for /: 'str' and 'int'
>>>
2.2、產(chǎn)生的結(jié)果與預(yù)期不符
站長在線提醒你:由于調(diào)用函數(shù)時,傳遞的實際參數(shù)的位置與形式參數(shù)的位置不一致時并不會總是拋出異常,所以在調(diào)用函數(shù)時一定要確定好位置,否則產(chǎn)生Bug,還不容易被發(fā)現(xiàn)。
例如,設(shè)計一個求梯形面積的函數(shù),并利用此函數(shù)求上底為 4cm,下底為 8cm,高為 5cm 的梯形的面積。但如果交互高和下低參數(shù)的傳入位置,計算結(jié)果將導(dǎo)致錯誤:
def area(upper_base,lower_bottom,height):
return (upper_base+lower_bottom)*height/2
print("正確結(jié)果為:",area(4,8,5))
print("錯誤結(jié)果為:",area(4,5,8))
運行結(jié)果為:
正確結(jié)果為: 30.0
錯誤結(jié)果為: 36.0
>>>
到此為止,站長在線為你講解的《在Python函數(shù)中參數(shù)傳遞的位置參數(shù)詳解》。本文的主要內(nèi)容有:實參和形參數(shù)量必須與定義時一致和實參和形參位置必須與定義時一致。已經(jīng)講解完畢了。
在下一個知識點,站長在線就來講解《在Python函數(shù)中理解參數(shù)傳遞的關(guān)鍵字參數(shù)》。關(guān)注站長在線,學(xué)習(xí)Python不迷路!歡迎你對站長在線進行關(guān)注,評論,點贊,分享、轉(zhuǎn)發(fā)!
本文地址:http://003188.cn/pythonweizhicanshu.html
阿里云虛擬主機1G空間,120元一年
香港、美國虛擬主機100元一年,1000元永久
騰訊云雙十一0.4折起,2核8G5M三年僅700元,2核4G8M三年僅198元
猜你喜歡