Ygon's Day09_函数

  1. 什么是函数?
    函数就是对实现某一特定的代码段的封装

  2. 函数的分类:

  • 内置函数:python已经实现的函数,程序员直接使用,例如print(),input()等。相当于系统造好的机器。
  • 自定义函数:自己定义的函数,相当于自己造机器。
  1. 函数的定义(声明)
    1)语法:
    def 函数名(参数列表):
    ​ 函数名
    2)说明:
    def - 关键字,固定写法,python中声明函数的关键字
    函数名:要求:不能是关键字的标识符。规范:见名知义、所有字母小写,多个单词用下划线隔开,不能和系统的函数名重名。
    () -固定写法
    参数列表 -形参1,形参2,形参3.....这儿的参数叫形参(变量),形参可以没有,也可以有多个。形参的功能是将函数外面的数据传递到函数里面
    : -固定写法
    函数体 -与def保持一个缩进的代码段;函数体分为函数说明文档和实现函数功能的代码段。
    3)初学者声明函数的步骤:
    ​ 第一步:确定函数的功能
    ​ 第二步:根据函数功能确定函数名
    ​ 第三步:确定参数
    ​ 第四步:实现函数功能
    ​ 第五步:确定函数的返回值

    4)函数在函数声明的时候不会执行,调用函数时,才会执行。

  2. 函数的调用:

    1)语法:

    函数名(参数列表)

    2)说明

    函数名 -函数名对应的函数必须是已经声明的函数

    () -固定写法

    参数列表 -实参,用于给形参赋值

    3)函数调用过程:

    1. 先回到函数声明的位置
    2. 用实参给形参赋值(传参),传参必须摆正每个参数都有值
    3. 执行函数体
    4. 执行完函数体再回到函数调用的位置,接着往后执行
  3. 函数的参数

    1)根据实参的写法将参数分为位置参数和关键字参数

    位置参数:调用函数的时候,实参的位置和形参的位置一一对应,然后保证每个形参都有值。

    关键字参数:以形参名=值的方式来调用函数,这里形参的顺序可以和声明函数时候的形参的顺序不同。

    注意:位置参数和关键参数可以混合使用,但是使用的时候一定要保证位置参数在关键字参数之前

    2)参数默认值

    声明函数的时候可以设置默认值。

    注意:a. 如果设置默认值的时候,一部分又默认值,一部分没有默认值,那么没有默认值的参数一定要在有默 认值的参数之前。

    ​ b. 有默认值的参数,调用的时候可以不用传参;没有默认值的参数,调用的时候必须传参

    ​ c. 当我们传参的时候想要跳过某一个或者几个有默认值的参数,直接给后面的参数传参的时候,后面的参数必须使用关键字传参

    3)参数类型说明

    • 给参数设置默认值,参数类型和默认值一样。
    • 以‘参数名:类型名’的方式说明参数类型。

    4)不定长参数

    1. 声明函数时,在形参前面加一个*,可以将形参变成元祖,同时接受多个实参的值(形参-元祖)
    2. 声明函数时,在形参前面加**,可将形参变成字典,可以同时接受多个关键字参数的值(形参-字典)

    注意:原则上,一个函数的参数中既可以有定常参数,也可以有带一个的不定长参数和两个*不定长参数。

    如果同时存在带一个和带*的不定长参数,带一个的不定长参数必须放在两个的不定长参数之前。

  4. 返回值

    1)返回值就是函数调用表达式的值,就是return关键字后面的值

    2)返回值的作用是将函数体中产生的数据传递到函数外面

    注意:函数调用表达式 -调用函数的语句;他的结果就是函数的返回值(返回值的获取)。

    3)return关键字

    • return只能出现在函数体内

    • 当执行函数体遇到return,函数体直接结束;并且将return后面的值作为函数的返回值返回。如果在执行函数体时,没有遇到return,函数的返回值为None.

    • 函数调用过程:

      1. 先回到函数声明的位置
      2. 用实参给形参赋值(传参),传参必须摆正每个参数都有值
      3. 执行函数体
      4. 确定返回值(当执行函数体遇到return,函数体直接结束;并且将return后面的值作为函数的返回值返回。如果在执行函数体时,没有遇到return,函数的返回值为None)
      5. 回到函数调用位置,接着往下执行。(此时函数调用表达式的值才是函数的返回值)

    4)什么时候用到返回值

    只要实现函数的功能产生了新的数据,就可以把这个数据用返回值返回。

    python中一个函数可以有多个返回值:return后给多个值,并用逗号隔开。(return 10,20)

你可能感兴趣的:(Ygon's Day09_函数)