python函数(二)

发布时间:2019-07-31 09:30:45编辑:auto阅读(1422)

    #6.传递任意个数的参数;
    #在定义函数时,若参数名前面使用“”,则表示可接受任意个数的参数,这些参数保存在一个元祖中。
    #定义函数,
    代表b是一个元祖,可以接受多个参数
    def add(a,*b):
    s=a
    #用循环迭代元祖b中的对象。
    for x in b:
    #累加
    s+=x
    #返回累加的结果。
    return s
    #调用函数输入两个参数求和,输出结果。
    res=add(1,2)
    print("两个参数求和结果:",res)

    #调用函数输入3个参数求和,输出结果。

    res=add(1,2,3)
    print("三个参数求和结果:",res)

    #调用函数输入5个参数求和,输出结果。

    res=add(1,2,3,4,5)
    print("五个参数求和结果:",res)

    #7.必须通过赋值传递的参数
    #python允许使用必须通过赋值传递的参数。
    #b是可变参数,则后面跟的参数c在调用传值的时候,必须指明参数名。
    def add(a,
    b,c):
    s=a+c
    for x in b:
    s+=x
    return s
    #调用函数,形参c未使用赋值传递,则出错。
    res=add(1,2,c=3)
    print(res)
    #正确使用方式,在调用的时候,必须指明参数c.
    #另外,带*号的参数也可以省略,代表传递一个空元祖。
    res=add(1,c=5)
    print(res)
    #函数的嵌套定义,python允许在函数内部定义函数。
    def add(a,b):
    #在函数内部定义的函数,将字符串转换为ASCII求和。
    def getSum(x):
    s=0
    for n in x:
    s+=ord(n)
    return s
    return getSum(a)+getSum(b)
    #调用函数,有点类似于递归的意思。
    res=add('a','b')
    print(res)
    #lambda函数;表达式函数,用于定义一个匿名函数,可将该函数赋值给变量,通过变量调用。lambda函数定义的基本格式如下:
    #Lambda 参数表:表达式
    #定义lambda表达式函数,实现两个参数求和的功能,并将该函数赋值给一个变量。
    #定义Lambda表达式函数,用于两个参数求和的功能。
    #并将该函数赋值给一个变量。
    add=lambda a,b:a+b
    #使用函数变量进行函数调用,传入两个整数
    res=add(1,2)
    print(res)

    #使用函数变量进行函数调用,传入两个字符串
    res=add('ab','cd')
    print(res)
    #lambda函数充分说明了python中的函数名就是一个变量,该变量引用了一个函数对象。
    #lambda函数非常适合定义简单的函数,与def不同,lambda的函数只能是一个表达式,可以调用其他的函数
    #但不能使用python的其他语句。
    #在lambad中调用其他的函数
    add=lambda a,b:ord(a)+ord(b)
    res=add('1','2')
    print(res)
    #递归函数,递归函数是指在函数体内调用函数本身。例如:fac()
    #定义函数:
    def fac(n):
    if n==0:
    #递归函数必须能够终止,即有个边界条件,否则会变成死循环;
    return 1
    else:
    #递归调用函数本身;
    return nfac(n-1)
    #调用函数;
    res=fac(5)
    print(res)
    #函数列表,python允许将函数作为列表对象,然后通过列表索引来调用函数。
    #使用lambda函数建立列表。
    d=[lambda a,b:a+b,lambda a,b:a
    b]
    #通过下标,调用列表中的第一个函数;
    res=d0
    print(res)
    #通过下标,调用列表中的第二个函数;
    res=d1
    print(res)

    #也可以使用def定义的函数来创建列表。
    #定义求和函数;
    def add(a,b):
    return a+b
    #定义求阶乘函数;
    def fac(n):
    if n==0:
    return 1
    else:
    return n*fac(n-1)
    #建立函数列表;对于d来说,是一个列表,里面装载了两个函数,add、fac;
    d=[add,fac]
    #调用求和函数;
    res=d0
    print(res)
    #调用求阶乘函数;
    res=d1
    print(res)

    #3.python还允许使用字典来建立函数映射,例如:
    #通过字典的方式,建立对上面已经定义好的两个函数的映射。
    d={"求和":add,"求阶乘":fac}
    #调用求和函数
    res=d"求和"
    print(res)
    #调用求阶乘函数;
    res=d"求阶乘"
    print(res)
    #注意:函数列表的实质就是在元祖、列表和字典等序列中建立函数对象的引用,然后通过所以来调用函数。

关键字

上一篇: 在线 Python运行工具

下一篇: 第3周 作业