三十四、函数以及文件存储操作
34.1 函数的概述
- 定义 :如果在开发程序时,需要某块代码多次, 但是为了提高编写的效率以及代码的重用,所以把具有独立功能的代码块组织为一个小模块,这就是函数。
- 参数: 函数需要几个关键的需要动态变化的数据,这些数据应该被定义成函数的 参数。
- 返回值:函数需要传出几个重要的数据(就是调用该函数的人希望得到的数据),这些数据
应该被定义成 返回值。
34.2 函数的创建以及调用
- 函数的定义需要用def关键字实现:函数名(参数)
- 定义一个空函数可以使用pass语句;pass可以用来作为占位符,未想好的函数,可以使用pass占位,可以让代码先运行起来。
- 函数的定义:
函数的执行:打印帮助文档
- 函数的调用
- 空函数的定义
34.3 函数参数传递
- 函数的优势:
- 降低编程的难度
- 代码重用。避免了重复劳动,提供了工作效率。
- 定义时小括号中的参数,用来接收参数用的,称为 “形参”
- 调用时小括号中的参数,用来传递给函数用的,称为 “实参”
- 形参是形式参数,可以任意修改
- 函数参数的详解
- 必选参数:必须要传递的参数
- 默认参数:如果没有传递参数,使用默认参数,如果传递了参数,使用传递的参数。
- 可变参数:用户传递的参数个数可以变化的参数,一般情况下写作*args,数据以元组(tuple)的方式存储。
- 关键字参数:用户传递参数的个数可以是多个,并且每个参数需要两个信息(key-value),一般情况下使用**kwarge表示,数据以字典(dict)的方式存储。
- 默认参数
- 形参和实参
- 可变参数
(1)
(2)
- 关键字参数
(1)
(2)
34.4 匿名函数
- 定义:匿名函数指一类无须定义标识符的函数或子程序。Python用lambda语法定义匿名函数, 只需用表达式而无需申明。(省略了用def声明函数的标准步骤)
- 语法:lambda函数能接收任何数量的参数但只能返回一个表达式的值
- 匿名函数
(1)
(2)
34.5 递归函数
- 定义:递归函数是一个自己调用自己的过程,要考虑什么时候跳出递归
- return为返回函数的返回值,函数遇到return结束执行
- 递归函数