return语句,

return 语句 
     语法:
     return [表达式]
     []代表可以省略
     作用:
      用于函数中,结束当前函数的执行,返回到调用该函数的地方,
      同时返回一个对象的引用关系
    说明:
     1.return语句后跟的表达式可以省略,省略后相当于reurn None
     2.如果函数没有return  语句,则函数执行完最后 一条语句后返回 None
     (相当于在最后 加了一条return None语句)

     3.函数调用一定会返回一个对象的引用

函数的参数传递
    传递方式
        位置传递
            序列传递
        关键字传参
            字典关键字传参
位置传参
    实际参数(实参的对应关系与形式参数(形参))
    的对应关系是按位置来依次对应的
    示意
        def myfun(a,b,c):
            pass
    说明:
    实际参数和形式参数通过位置进行传递的匹配
    实参个数必须与形参个数相同


序列传参:
    序列传参是指在函数调用过程中,
    用*将序列拆解后按位置传参的方式进行参数传递


示例:
    def myfun(a,b,c):
        pass
    s = [1,2,3]
    myfun(*s)  #表示把s拆开
    s2 = "ABC"
    myfun(*s2)


关键字传参:
    关键字传参是指传参时,按着形参的名称给形参赋值
    实参和形参按名称进行匹配


    示例:
        def myfun(a,b,c):
            pass
        myfun(b=22,c=33,a=11)
        myfun(c=3,b=2,a=1)


字典关键字传参:
    是指实参为字典,将用字典有**拆解后进行关键字传参


    示例:
    def myfun(a,b,c):
        pass
    d = {"c":33,"a":22,"b":11}
    myfun(**d)  #拆解字典后再传参
    说明:
    字典的键名必须和形参名一致
    字典的键名要在形参中
    字典键名必须为字符串
    
函数的综合传参:

    函数传参方式,在能确定形参能唯一匹配到相应实参的情况下可以任意组合

 myfun(b=2,c=3,1) #错误,不能确定1给谁?
说明:

传参时先位置传参,后关键字传参


----------------------以下讲的是函数的形参(如何接收实参)--------
函数的缺省参数
    语法:
     def 函数名(形参名1 = 默认实参1,形参名2 = 默认实参2,...):
        ...
    示例:
     def info(name, age=1,address="未填写"):
        print(name,"今年",
                age,'岁,家庭地址是:',address)
     info("tarena",15)
     info("小魏",20,"北京市朝阳区")
     info("小李")
说明:
1.缺省参数必须自右至左依次存在,如果一个参数有缺省参数,
  则其右侧的所有参数都必须有缺省参数
    如:
     def test(a,b=10,c):  #<---是错的
         pass

2.缺省参数可以有0个或多个,甚至全部都有缺省参数


函数的形参定义方式:
    位置形参
      星号元组形参
    命名关键字
      双星号字典形参


位置形参:
    语法:
    def 函数名(形参名1,形参名2,...)
        语句块


星号元组形参:
    语法
     def 函数名(*元组形参名):

         语句

扫描二维码关注公众号,回复: 919718 查看本文章

命名关键字形参
    语法:
        def 函数名(*,命名关键字形参)
        语句
    或
    def 函数名(*args,命名关键字形参):
        语句
    作用:
        所有的参数都必须用关键字传参或字典关键字传参传递
示例:
def fm(a,b,*,c,d):不用收集多余的位置传参
def fm(a,b,*args,c,d):收集多余的位置传参


双星号字典形参:
    语法:
      def 函数名(**字典名)

          语句

  函数的不定长参数:
    def fn(*args,**kwargs):
        pass

    #可以接收任意的位置传参和关键字传参


猜你喜欢

转载自blog.csdn.net/weixin_42130019/article/details/80315343