Python 中函数的 收集参数 机制
生活随笔
收集整理的這篇文章主要介紹了
Python 中函数的 收集参数 机制
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
定義函數的時候,在參數前加了一個 * 號,函數可以接收零個或多個值作為參數。返回結果是一個元組。
傳遞零個參數時函數并不報錯,而是返回一個空元組。但以上這種方法也有局限性,它不能收集關鍵字參數。
對關鍵字參數進行收集的另一種 收集參數 機制:使用兩個星號 ( ** ) ,用法同上。最后返回一個以參數名為鍵、參數值為鍵值的字典。
*和 **是可以一起使用的,返回特定的結果。
參數收集的用處之一是使我們編寫函數時不用頭疼將 N 多個參數都塞在一個括號里,既美觀又省事。用處之二便是:
-
*:可以將一系列值存放進一個元組變量里,可用該元組變量名加一個 * 號作為參數傳遞給一個正被調用的函數,而后該函數就可以自由地對這些值進行一系列合法的操作。
-
**:同理,只不過變量存放的方式是字典。
Python的4種傳值的方式,必選傳參 func(param)、默認傳參func(param=value)、可選傳參func(*param)、關鍵字傳參func(**param)
必選參數 func(param):
定義函數時的參數個數,順序已定義好,在調用函數調時的參數個數、順序必須一致,不能多,也不能少,也不能亂(和之前的順序一致),因此叫必選參數,這是最常用的傳參方式
''' 遇到問題沒人解答?小編創建了一個Python學習交流QQ群:778463939 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書! ''' def test(param1,param2,param3):print param1,param2,param3test(1,"hello",True)test(True,1,"hello")執行結果:
1 hello TrueTrue 1 hello默認參數func(param=value):
# 1、定義函數時,已為參數設定一個默認值,假如調用函數時不傳參,在函數內部使用參數時的值則為默認值,傳參時則和必選參數一樣使用# 2、如果必選參數和默認參數同時存在,則默認參數必須跟在必選參數后面# 3、如果有多個默認參數,調用時順序可以不一致,但是必須要顯式表明是哪個默認參數,例如 param2=100,但是建議統一按照函數定義的順序進行使用def test(param1,param2=100,param3=True):print param1,param2,param3 test(1)# 默認參數可以不傳 test(1,"hello",False)# 多個默認參數時,調用順序一致 test(1,param3=False,param2="hello")# 調用順序也可以不一致執行結果:
1 100 True1 hello False1 hello False總結
以上是生活随笔為你收集整理的Python 中函数的 收集参数 机制的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python中按指定长度分割字符串并反转
- 下一篇: Python操作Oracle数据库:cx