Python獲取函數(shù)參數(shù)個(gè)數(shù)和默認(rèn)參數(shù)

一、創(chuàng)建函數(shù)

創(chuàng)建一個(gè)函數(shù)用來(lái)計(jì)算三個(gè)數(shù)的和,如下:

def addnum3(num1, num2, num3):
    """
    該函數(shù)用來(lái)計(jì)算三個(gè)數(shù)之和
    :param num1: 第一個(gè)數(shù)字
    :param num2: 第二個(gè)數(shù)字
    :param num3: 第三個(gè)數(shù)字
    :return: 和值
    """
    return  num1 + num2 + num3

下來(lái),我們對(duì)其進(jìn)行調(diào)用:

result = addnum3(2, 4, 5)
print(result)
# 11

二、引出問(wèn)題

假設(shè)我們要計(jì)算這個(gè)函數(shù)返回結(jié)果的平均值。那么此時(shí),我們只需將和值除以參數(shù)個(gè)數(shù)即可,那么參數(shù)個(gè)數(shù)怎么獲取呢?你可能會(huì)說(shuō):數(shù)一下就知道了。那么假設(shè)此時(shí)有很多的參數(shù),你還去數(shù)嗎?此時(shí),明顯這個(gè)方法是不恰當(dāng)?shù)?,那么有沒(méi)有更加方便、高效的方法呢?我們接著往下看。

三、解決問(wèn)題

print(addnum3.__code__.co_argcount)
# 3
# 輸出的函數(shù)參數(shù)個(gè)數(shù)
print(addnum3.__code__.co_varnames)
# ('num1', 'num2', 'num3')
# 這里會(huì)輸出函數(shù)用到的所有變量名,不只是參數(shù)名

print(addnum3.__defaults__)
# None

通過(guò)上面這個(gè)例子,我們不但可以獲取參數(shù)個(gè)數(shù),還可以獲取所有變量名以及默認(rèn)返回值。此時(shí),我們只需根據(jù)自己的需求,去應(yīng)用就可以了,那么以上的問(wèn)題,就自然解決了。

希望本文對(duì)你有所幫助~~如果對(duì)軟件測(cè)試、接口測(cè)試、自動(dòng)化測(cè)試、面試經(jīng)驗(yàn)交流感興趣可以加入我們。642830685,免費(fèi)領(lǐng)取最新軟件測(cè)試大廠面試資料和Python自動(dòng)化、接口、框架搭建學(xué)習(xí)資料!技術(shù)大牛解惑答疑,同行一起交流。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容