Python學習之路基礎篇--09Python基礎,初識函數

函數能夠分爲內置函數 和 自定義函數。此次關注的主要是自定義函數。定義函數以後,就能夠在任何須要它的地方調用。函數

1 返回值的重要性變量

  返回值的3種狀況 數據類型

    沒有返回值 ---- 返回None數據

      不定 return註釋

      只寫 return :結束一個函數字典

      return None ---- 不經常使用習慣

    只有一個返回值return

      能夠返回任何數據類型參數

      只要返回就能夠接收到

      若是一個函數中有多個return ,那麼只執行第一個

    返回多個值

      用多個變量接收:有多少個返回值就用多少個變量接收

      用一個變量接收:獲得一個元組

 2 參數

  形參:

  實參:

  沒有參數

    定義函數和調用函數時括號裏都不寫內容

  有一個參數

    傳什麼就是什麼

  有多個參數

    位置參數

 

  站在實參的角度上:

    按照位置傳參

    按照關鍵字傳參

    混着用是能夠的,可是必須先按照位置傳參,再按照關鍵字傳參數;不能能夠同一個變量傳多個值

  站在形參的角度上:

    位置參數:必須傳,且有幾個參數就要傳幾個值

    默認參數:能夠不傳,若是不傳就用默認參數,傳了就用傳的

 

  只有調用函數時候:

    按照位置傳:直接寫參數的值

    按照關鍵字傳:關鍵字 = 值

  定義函數的時候:

    位置參數:直接定義參數

    默認參數,關鍵字參數: 參數名 = ‘默認的值’

    動態參數:能夠接受任意多個參數

      參數名前加 * ,習慣用 *args(接收的是按照位置傳參的值,組織成一個元組)

      參數名前加 ** ,習慣用 **kwargs(接收的是按照關鍵字傳參的值,組織成一個字典)

    順序:位置參數,*args,默認參數,**kwargs

    在形參的角度上,給變量加上一個 * ,就是組合全部傳過來的值

    在實參的角度上,給一個序列加上 * ,就是將這個序列按照順序打散

3 函數的註釋

  def func()

  ''''

  這個函數實現了什麼功能

  參數1:......

  參數2:......

   return:返回的東西是什麼

  '''

4 函數上面的小坑

  若是定義的時,形參的默認參數是一個可變數據類型,若是不傳值調用,調用都會用同一個(就是重複用這個)

相關文章
相關標籤/搜索