12.函数

函数

一.函数基础

1.什么是函数?

在程序中,函数就是具备某一功能的工具,事先将工具准备好就是函数的定义,遇到应用场景拿来就用就是函数的调用。

2.为什么使用函数

  1. 程序冗长
  2. 程序的扩展性差
  3. 程序的可读性差

3.如何使用函数

先定义后调用

  1. 定义阶段:本来报错的东西不会报错,只检查语法不执行函数代码
  2. 调用阶段:执行函数代码

二.定义函数的三种形式

第一种定义方式,无参函数

第二种方式:有参函数,有几个参数,就必须传入几个参数

第三种:空函数,函数里写入pass

三.函数的返回值

定义了函数,需要一个函数的返回值,也就是函数内部代码经过一些列逻辑处理获得的结果。类似于变量名用来接收变量值,函数名用来接收函数的返回值。

需要注意的是:

  • return是一个函数结束的标志,函数内可以有多个return,只要执行到return,函数就会停止。
  • return的返回值可以返回任意数据类型
  • return的返回值无个数限制,即可以使用逗号隔开返回多个值
    • 0个:返回None
    • 1个:返回值是该值本身
    • 多个:返回值是元

四.函数参数的应用

1.形参和实参

  1. 在函数定义阶段括号内定义的参数,称之为形式参数,简称形参,本质就是变量名。
  2. 在函数调用阶段括号内传入的参数,称之为实际参数,简称实参,本质就是变量的值。

2.位置参数

  1. 位置形参:在函数定义阶段,按照从左到右的顺序依次定义的形参,称之为位置形参。
    特点:按照位置定义的形参,都必须被传值,多一个不行,少一个也不行。

  2. 位置实参:在函数调用阶段,按照从左到右的顺序依次定义的实参,称之为位置实参。

    特点:按照位置为对应的形参依次传值。

3.默认形参

在定义阶段,就已经被赋值。在调用时可以不用为其赋值。

注意:

  1. 默认形参必须放在位置形参的后面。
  2. 默认形参的值只在定义阶段赋值一次,也就是说默认参数的值在函数定义阶段就已经固定了。

4.关键字参数

在调用函数时,按照key=value的形式为指定的参数传值,称为关键字实参。

注意:

  1. 可以混用位置实参和关键字实参,但是位置实参必须在关键字实参的左边。
  2. 可以混用位置实参和关键字实参,但不能对一个形参重复赋值。

5.可变长参数

  1. 可变长形参:
    1. *args接受了所有位置实参,然后以元祖的形式保存下来,只接受位置参数,不接受关键字实参
    2. **kwargs接收所有的关键字实参,然后以字典的形式保存下来
  2. 可变长实参:
    1. *把这个列表内的元素一个一个取出来,然后一个一个传给这个函数
    2. **会把这个字典打散成键值对的形式作为实参传给函数

猜你喜欢

转载自www.cnblogs.com/yellowcloud/p/10945778.html