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