python基础14:函数
函数是指组织一段能够实现独立功能的代码块为一个小模块,可重复调用。
使用函数可以提高代码编写的效率以及代码的重用
函数分类:
内置函数 : 可以直接用函数名调用,如len(),type()等
模块函数 : 通过模块名进行调用,如math.sin()等 (前提是先导入(import)第三方模块)
自定义函数 : 按照用户需求随用随定义
导入模块函数及调用函数方式
1.内置函数
1.1数据类型相关的函数
int(),bool(),float(),str(),list(),tuple(),set(),dic(),type()
1.2逻辑判断相关的函数
all():如果bool(x)对于可迭代的所有值x为True,则返回True。如果iterable为空,则返回True
any():如果bool(x)对于可迭代的任何x为True,则返回True。如果iterable为空,则返回False。
1.3数学相关函数:sum()一个对象中所有元素求和,可以设置起始值累加起始值为0 , abs()求绝对值 , min()取最小值 , max() 取最大值, pow() 两个元素求次方、三个元素则是次方后对第三个取余数,
round() 四舍五入到所需小数位数 , len()求对象元素个数 , range()左臂右开、第三个为步长,一个元素则默认从0开始 ,zip()、enumerate()
sum()
range函数
zip函数
enumerate函数 枚举
2.模块函数
导库方式:
3.自定义函数
封装独立的功能到一段代码块中
自定义函数的格式:
def 函数名(参数1,参数2....) :
代码块(函数要实现的功能)
return 返回值
其中,函数的参数和返回值不是必须要写的
3.1自定义一个函数
3.2函数的参数
3.3参数的分类
两种分类标准:
形参和实参
位置参数和关键字参数
形参和实参:
实参是实际占用内存地址的实实在在的参数,而形参只是意义上的一种参数,在定义的时候是不占内存地址的
例如自定义函数add2中,x,y,z就是形参,1,2,3在调用函数时传入的实参,它的值被存储在形参x,y,z中
位置参数和关键字参数
位置参数和关键字参数混用
位置参数在前,关键字参数在后
3.4收集参数
所谓的收集参数,就是说只指定一个参数,然后允许调用函数时传入任意数量的参数。
(不定长参数)
收集位置参数
3.5 函数的返回值
3.6函数的说明文档
如何让其他人能看懂函数功能及用法
如何写函数帮助文档:
第一步:先写上自定义的这个函数的作用是什么
第二步:写对参数的要求
第三步:函数的返回值是什么
要求:语言简洁明了,函数各种要求尽量详细
帮助文档的位置在def关键字表达式之后,函数功能代码块之前
3.7自定义模块函数
1.将多个自定义函数放在一起
2.新建一个jupyter notebook 粘贴过来
3.重命名
4.另存为.py文件
5.放到当前文档所在路径下(%pwd 当前文档所在位置查询)或者放在anaconda 放包的地方(先import os 再os.__file__ )推荐第二种方法
3.8匿名函数lambda
Lambda函数是自定义函数的一种,专指用关键字” lambda”定义的无名短函数。
这种函数得名于省略了 用def声明函数的标准步骤
lambda函数的语法只包含一个语句,如下:
lambda [arg1 [,arg2,.....argn]]:expression (表达式)
简单表达一下:
lambda 形式参数(数量不限) : 函数表达式
(lambda表达式汇总的参数不需要用括号括起来)
3.8.1匿名函数和其他函数连用
lambda和map函数连用
3.9函数可以嵌套使用
3.10局部变量和全局变量