day-09-初識函數

函數的初識

  • 函數:以功能(完成一件事)為導向如,登錄,註冊。通用性的,一個函數一個功能。隨調隨用

  • 優點:減少程式碼的重複性、增強程式碼可讀性。

函數的結構調用

def login():
    aa = '你的名字'
    return aa
  • 結構:
    • def 關鍵字,定義函數.
    • login() 函數名:與變數設置相同,具有可描述性。
    • 函數體:縮進。函數中盡量不要出現print()

函數的返回值

  • return:
    • 在函數中遇到return直接結束函數

      def re():
          print('111')
          print('222')
          return             # 函數執行到此處時會結束函數
          print('333')
          print('444')
    • 將數據返回給函數的執行者,調用者login()
      def login():
          aa = '你的名字'
          return aa
          
      print(login())
      # 輸出:
      你的名字
    • 返回多個元素,是以元組的形式返回給函數的執行者。
      def login():
          aa = '你的名字'
          bb = '小明'
          cc = '小紅'
          return aa, bb, cc
      
      print(login())
      # 輸出:
      ('你的名字', '小明', '小紅')

函數的參數

  • 實參,形參
    • 實參角度:
      1. 位置參數:從左至右實參與形參一一對應
        def login(name, password, security):
            aa = f'你的名字是{name},密碼是{password},驗證碼是{security}'
            return aa
        
        print(login('小楊', '123', 'abcd'))
        # 輸出:
        你的名字是小楊,密碼是123,驗證碼是abcd
      2. 關鍵字參數:一一對應,順序可以改變。
        def login(name, password, security):
            aa = f'你的名字是{name},密碼是{password},驗證碼是{security}'
            return aa
        
        print(login(password='123', name='小楊', security='abcd'))
        # 輸出
        你的名字是小楊,密碼是123,驗證碼是abcd
      3. 混合傳參:既有關鍵字又有位置。所有的位置參數都要寫在關鍵字參數的前面。位置參數必須一一對應
        def login(name, password, security):
            aa = f'你的名字是{name},密碼是{password},驗證碼是{security}'
            return aa
        
        print(login('小楊', '123', security='abcd'))
        # 輸出:
        你的名字是小楊,密碼是123,驗證碼是abcd
    • 形參角度:
      • 位置參數:與實參角度的位置參數是一種。
      • 默認參數:默認的參數,可以改,經常使用的參數,非默認參數跟在默認參數之前
        def login(password, security, name='小楊'):
            aa = f'你的名字是{name},密碼是{password},驗證碼是{security}'
            return aa
        
        print(login(password='123', security='abcd'))
        # 輸出
        你的名字是小楊,密碼是123,驗證碼是abcd