Python函數參數使用


  對於習慣使用java/C#等編程語言的人,通常調用函數的時候就是例如 test(int x,int y ,int z),調用就是test(1,2,3)。但是對於Python來說函數調用就非常靈活

一:不定量參數傳遞

  def print_params(*params):
    print(params)


  這里params是一個數組結構,調用的時候依據實際參數長度生成一個數組參數

二:混合參數傳遞

  def print_params_2(title, *params):
    print(title)
    print(params)

 調用:print_params_2('Params:', 1, 2, 3)

 返回結果
    Params:
    (1, 2, 3)
  這種方式的參數,參數定義的會優先取傳入數據,當沒有定義的參數承接數據時,剩下的數據會被傳遞到不定量參數里

 同樣情況另一種寫法

  def in_the_middle(x, *y, z):

    print(x, y, z)

 這種寫法,即是y就是取中間參數,最少需要三個參數,x,z首尾取一個,剩下的全部賦值給y

  def print_params_3(**params):

    print(params)

 當我們使用兩個星號時,表示我們的參數是key-value字典集參數

 

所以終極混合:

  def print_params_4(x, y, z=3, *pospar, **keypair):
    print(x, y, z)
    print(pospar)
    print(keypair)

 前面匹配三個參數,pospar數組匹配中間參數,尾部key-value形式的參數全部交給keypair

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM