美文网首页Python
Python快速精通4 - 函数,lambda表达式

Python快速精通4 - 函数,lambda表达式

作者: 小马哥China | 来源:发表于2019-05-28 22:49 被阅读67次

    1,函数入门

    1.1函数本质

    1.2 创建函数

    语法格式:

    def 函数名(形参列表):
        ['''函数文档''']
        可执行语句组成的函数体
        [return [返回值]]
    

    函数名: 合法的标志名(最好是能够见名知意)
    形参列表: 定义函数可以接收的参数.可以没有形参,也可以有多个形参,之间用","隔开,调用的时候为形参赋值.
    函数文档: 用以解释说明函数功能,放置在函数定义的开始部分
    函数体: 函数体内部的语句按照语句的先后顺序执行.

    实例: 用于比较求两个整型变量的最大值

    # 定义一个函数
    def get_max(x,y):
        if x>y:
            return x
        else:
            return y
    # 调用函数,并为函数传入实际参数
    result = get_max(1,100)
    print(result)
    
    100
    
    #上一个例子的另一种写法
    def get_max(x,y):
        return x if x>y else y
    
    print(get_max(1,100))
    
    100
    

    实例: 展示函数文档的作用

    def sayHello():
        '''sayHello实现了打招呼的功能'''
        print('Welcome pythoner!')
    help(sayHello)
    
    Help on function sayHello in module __main__:
    
    sayHello()
        sayHello实现了打招呼的功能
    

    1.3 使用函数

    如上面例子所示,使用函数即直接调用函数名,并传入函数参数,get_max(1,100)即完成了调用

    1.4 函数返回值

    • 没有返回值
    • 一个返回值
    • 多个返回值

    例一,没有返回值

    def savePerson(name,age):
        print('Name:{0}, Age:{1}, 数据保存成功!'.format(name,age))
    savePerson('马云',55)
    
    Name:马云, Age:55, 数据保存成功!
    

    例二,一个返回值

    #上一个例子的另一种写法
    def get_max(x,y):
        return x if x>y else y
    
    print(get_max(1,100))
    
    100
    

    例三,多个返回值

    def getPerson():
        name,age = '马化腾',28
        return name,age
    result = getPerson()
    print('getPerson()返回值类型: ',type(result))
    print(result)
    
    getPerson()返回值类型:  <class 'tuple'>
    ('马化腾', 28)
    

    2,函数的参数详解

    2.1 参数用法1: 一般使用

    定义函数的时候,会在参数列表里面指定形式参数,所谓形参类似一个占位声明的意思,等函数被调用的时候传递给函数这个"黑匣子"实际的参数,谁调用谁传入实际参数

    # 形式参数: 下面是一个函数的声明,length与width就是形式参数
    def area(length,width):
        '''这里是函数文档,一般用于介绍函数的功能及使用: 根据传递进来的参数长与宽,计算面积'''
        return length*width
    
    # 函数说明文档: 这里是对函数文档的调用
    help(area)
    
    # 实际参数: 这里是对area函数的调用,在调用的时候传入实际参数
    print('面积: ',area(1,1))
    
    Help on function area in module __main__:
    
    area(length, width)
        这里是函数文档: 根据传递进来的参数长与宽,计算面积
    
    面积:  1
    

    2.2 参数用法2: 关键词参数的使用

    有一种场景,假设我现在在调用一个函数saveData(name,age,email,address,school),这个函数有多个参数,调用的时候如果传参顺序没摆放正确,函数即使不会抛出异常,结果也不是你期望的,python给出这样的方式避免错误,那就是在调用时候,我们给实际参数指定形式参数的名字.如下面例子:

    def saveData(name,age,email,address,school):
        print("Name: {0}的数据已经成功保存.".format(name,age))
    
    

    2.3 参数用法3: 参数默认值

    2.4 参数用法4: 可变个数的参数

    3,内部函数(局部函数)

    4,函数高级内容

    4.1 函数作为变量

    4.2 函数作为参数

    4.3 函数作为返回值

    4.4 递归函数

    5,lamda表达式

    相关文章

      网友评论

        本文标题:Python快速精通4 - 函数,lambda表达式

        本文链接:https://www.haomeiwen.com/subject/wycstctx.html