day09函数的定义和形参/实参

1,函数:我们定义好一个事情,等想用的时候直接拿出来就行了,代码不用每次都写,节省无用功,(就好比把一次性做好的红烧肉放到冰箱里,什么时候想吃,就拿出来吃就好了,不用再费时费力去做了)

  函数的官方定义:对代码块和功能的封装和定义

2,函数的定义,函数名,函数体以及函数的调用

  我们用def关键字来定义函数,函数的定义语法基本格式如下:

    def 函数名():                    ..................................................函数名相当于前边讲过的变量,符合变量的命名规则

      函数体.......................................................................函数体就是咱们一次写好的代码块以供后边来调用

    函数名().............................................................................调用已经写好的函数

  列如:def fn():

      print("网上最近有一个专家说用那个纸碗吃泡面不健康")

      print("当时我一听就乐了")

      print("泡面,你懂泡面吗?")

      print("我他妈都混得吃泡面了,我还在乎健康")

    fn().................................................................................调用已经定义好的函数,把函数体的内容打印出来(就不写运行结果了)

3,函数的返回值(return" "," "," ".......)这里return可以返回一个值,也可以返回多个值,同时return还有结束程序的意思,即相当于break,返回本层次的值,并且停止本层次当前循环.

  列如:def fn():

      print("网上最近有一个专家说用那个纸碗吃泡面不健康")

      print("当时我一听就乐了")

      print("泡面,你懂泡面吗?")

      print("我他妈都混得吃泡面了,我还在乎健康")

      return"屌丝"

    q = fn()

    print(q)..........................................................................此时打印的内容是"屌丝"还有函数体打印的内容

  总结:1>当return后边什么都不写或者不写return返回的就是  None

    2>当return后边返回一个值,则调用的是后就接受一个

    3>当return返回多个值时,调用函数的手后就会接受到一个tuple(可以解构)

4函数的参数:参数就是一个可以改变的数,我们可以同改变参数来改变调用函数的内容和结果(参数是一个可以改变的数)

  参数的格式:

    def fn(chat):...................................................括号里可以添加一个参数,也可以添加多个参数,此时这里的参数叫做形参

      函数体(参数).........................................函数体里和函数名的给的参数一一对应.

      列如:def fn(zhicheng):

          print("网上最近有一个%S说用那个纸碗吃泡面不健康" % zhicheng)

          print("当时我一听就乐了")

          print("泡面,你懂泡面吗?")

          print("我他妈都混得吃泡面了,我还在乎健康")

        (此时调用输入的是实参)fn("医生")........................................................把参数"医生"打印一次

        (此时调用输入的是实参)fn("医师")........................................................把参数"医师"打印一次

        (此时调用输入的是实参)fn("谣言")........................................................把参数"谣言"打印一次

    1>形参:是写在函数名的位置,形式上的参数,值不过是实际参数的中间承载体

    2>实参:是写在函数调用的时候,是调用的时候实际输入的参数.是参把参数参数传递给形参叫做传参

  4.1>位置参数:是按照位置顺序把每what一个实参按照先后顺序传给形参

    列如:def fn(zhicheng,who,what): 

        print("网上最近有一个%s说用那个纸碗吃泡面不健康" % zhicheng)

        print("当时%s一听就乐了" % who)

        print("泡面,你懂泡面吗?")

        print("我他妈都混得吃泡面了,我还在乎%s" % what)

      fn("专家","我","健康").................................................................这里需要实参与形参的位置一一对应

  4.2>关键字参数:使用与多个变量,实参和形参不用一一对应,在输入实参的时候只要记住形参的名字就好了,也不用名字一一对应

    列如:def yue(chat, address, age):   

        print("拿出⼿手机")   

        print("打开"+chat)   

        print("找个"+address+"附近漂亮的"+str(age)+"岁妹⼦子")   

        print("约不不约")

      yue(chat="微信", age=18, address="北北京")       # 关键字参数.

      结果: 拿出⼿手机

          打开微信

         找个北北京附近漂亮的18岁妹⼦子

         约不不约

  
   1. 形参:
                1. 位置参数.
                2. 默认值参数. 当调用的时候不给传值使用默认值
                3. 混合使用. 顺序: 1. 位置参数, 2, 默认值参数

   2. 实参:
                1.位置参数. 按照位置给形参赋值
                2. 关键字参数. 按照名称给形参赋值
                3. 混合参数. 先用位置参数, 再用关键字参数 

  4.3>默认值参数:默认值参数就是调用函数的时候如果补个默认参数的实参,输出的时候就是默认值,当给默认参数值时,就把默认值覆盖掉

    列如:def stu_info(name, age, sex='男'):

        print("录⼊入学⽣生信息")

        print(name, age, sex)   

        print("录⼊入完毕")

        stu_info("张强", 18)...........................结果就是:张强,男,18 

   注意, 必须先声明位置参数, 才能声明默认值参数.(默认参数必须写在最后边,当有大量一样的数据时,采用默认参数)  

        

    

猜你喜欢

转载自www.cnblogs.com/ljc-0923/p/9314131.html
今日推荐