新聞中心
這篇文章主要介紹數(shù)組在python中能不能作為默認(rèn)參數(shù)使用,文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!
還記得之前我們?yōu)榱耸褂霉δ鼙苊膺M(jìn)行多次操作,可以選擇構(gòu)建一個框架,框架的功能定義好后就可以直接使用了,同樣我們的參數(shù)也可以這樣定義。在函數(shù)調(diào)用參數(shù)之前,我們就可以給參數(shù)賦予值,調(diào)用的時候就會自動顯示,也省去了我們每次輸入的麻煩。
默認(rèn)參數(shù)用于定義函數(shù),為參數(shù)提供默認(rèn)值,調(diào)用函數(shù)時可傳可不傳該默認(rèn)參數(shù)的值(注意:所有位置參數(shù)必須出現(xiàn)在默認(rèn)參數(shù)前,包括函數(shù)定義和調(diào)用)
# 正確的默認(rèn)參數(shù)定義方式--> 位置參數(shù)在前,默認(rèn)參數(shù)在后 def print_hello(name, sex=1): .... # 錯誤的定義方式 def print_hello(sex=1, name): .... # 調(diào)用時不傳sex的值,則使用默認(rèn)值1 # print_hello('tanggu') # 調(diào)用時傳入sex的值,并指定為2 # print_hello('tanggu', 2)
在使用默認(rèn)參數(shù)的時候要特別注意的一點(diǎn)是,默認(rèn)參數(shù)必須要指向不可變對象,比如數(shù)組、字典這些都是可變對象,是不能被用作默認(rèn)參數(shù)的,至于為什么,這里不細(xì)說了,大家先記住就好,看下面這個例子。
#默認(rèn)參數(shù),注意不能使用list或dict等作為默認(rèn)參數(shù) def defaultParams(m=1,n=100): sum = 0 for i in range(m,n+1): sum += i print(sum) return sum #如果使用list數(shù)組來作為默認(rèn)參數(shù),多次調(diào)用函數(shù)的返回值會發(fā)生變化,在使用過程要特別注意 def defaultParamsTemp(list=[]): list.append(9) print(list) return list defaultParams(1,3) defaultParamsTemp() defaultParamsTemp() defaultParamsTemp()
6 [9] [9, 9] [9, 9, 9]
以上是“數(shù)組在python中能不能作為默認(rèn)參數(shù)使用”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
分享標(biāo)題:數(shù)組在python中能不能作為默認(rèn)參數(shù)使用-創(chuàng)新互聯(lián)
網(wǎng)頁路徑:http://www.dlmjj.cn/article/dgijcj.html