zoukankan      html  css  js  c++  java
  • day10 函数的定义及函数语法详解

    """
    今日内容:
       (1)函数的定义及特点
       (2)函数的语法及函数的四部分
        (3)函数的分类
        (4)函数的调用
        (5)函数的return详解
    
    一、函数的定义
       1、什么是函数?
            -- 具有 特定功能 的代码块,该代码块具有一个能表示其功能的名称,后期可以通过名称调用该函数。
        2、为什么要使用函数?
            -- 函数对特定的功能进行了封装,可以通过函数名进行调用,避免了代码的冗余
            -- 可以使代码的结构层次更加的清晰
            -- 可以使代码的维护更加简单
    
    二、函数的语法及函数的四部分
        定义函数的语法: 通过关键字 def 来定义函数
            def 函数名(参数列表):
                '''文档注释'''
                函数体
                return 返回值
    
        函数的四部分:
            函数除了关键字 def 不能变之外,其余四部分都可以变化
            -- 变量名:后期通过函数名进行函数的调用
            -- 参数列表:函数的执行需要外部传入某些数据时,需要设置参数列表
            -- 函数体:函数实现具体功能的代码块
            -- 返回值:函数执行后向外界返回的结果
    
    三、函数的分类
        根据有无函数体进行分类:
            --空函数:函数体使用pass进行占位,后期再进行补充
            --非空函数:函数体补位空的函数
    
        根据函数的参数列表进行分类:
            -- 无参函数:当函数的执行不需要外接提供数据时,函数使用空参函数
            -- 有参函数:当函数的执行需要外界提供数据时,需要在变量名后的括号中添加一个或多个参数,此时就使用有参函数
    
        根据返回值进行分类:
            --明确返回值的函数:当函数的执行结果需要提供给外界时,就需要明确函数的返回值
            --不明确返回值的函数:当函数的执行结果不需要提供给外界时,不需要明确函数的返回值
            --【注】:不论函数需不需要明确返回值,都会有return返回值
    
    四、函数的调用
        函数必须 先定义 后执行
        函数的使用的四步骤:
            -- 通过关键字定义函数
            -- 通过函数名找到函数的内存地址
            -- 通过加 () 调用函数,如果定义时有参数就需要传入参数,反之则不需要传入参数
            -- 函数执行完毕后向外界提供返回值,如果外界需要返回值就接收
            --【注】:函数使用一次就调用一次
    
    五、函数的返回值详解
        返回值得两个作用:
            -- 结束函数
            -- 为外界提供返回值
    
        函数返回值的三种方式:
            -- 不明确返回值:系统默认添加 return ,其返回值为 None
            -- 明确空返回值:当函数不需要向外界提供函数的运行结果时,此时可以不需要明确函数的返回值
            -- 明确返回值:当函数需要向外界提供运行结果时,就需要明确函数的返回值
            
        函数返回值的个数:
            --函数的返回值理论上只能有一个,当需要返回多个返回值时,此时return返回的是一个包含有多个返回值的元组,此时外界多个变量要接收返回值时会自动进行解压赋值
            --函数的返回值需要解压赋值时,程序不会报错,如果需要多个变量进行解压赋值时,变量个数必须与返回值的个数相同。
    
    
    """
  • 相关阅读:
    ok6410驱动usb摄像头
    自己动手写CPU之第五阶段(1)——流水线数据相关问题
    ListView嵌套ListView时发生:View too large to fit into drawing cache的问题
    算法导论 第8章 线性时间排序(计数排序、基数排序、桶排序)
    Android_通过ContentObserver监听短信数据变化
    【MyEcplise】导入项目报错:Errors running builder 'JavaScript Validator' on project '项目名'. java.lang.ClassCastException
    【js】js中const,var,let区别
    【Node.js】2.开发Node.js选择哪个IDE 开发工具呢
    【Node.js】1.安装步骤
    【POI】对于POI无法处理超大xls等文件,官方解决方法【已解决】【多线程提升速率待定】
  • 原文地址:https://www.cnblogs.com/lice-blog/p/10764786.html
Copyright © 2011-2022 走看看