和其他语言一样,函数就是一个模块,这个模块可以实现特定的功能,合理的使用函数,可以提升我们的代码效率。

函数的定义和调用

def 函数名():
	语句...

Python函数参数是函数 python函数包括参数函数吗_可变参数

一个我简单的输出函数,调用函数时直接用函数名调用,如果不主动调用函数,函数不会执行。

Python函数参数是函数 python函数包括参数函数吗_默认参数_02


函数里还可以写函数,这就是函数的嵌套

函数的参数

定义函数的时候的变量叫形参,调用函数时传递的数据叫实参

形参又可以分为四种参数,分别是:位置参数,默认参数,可变参数,关键字参数。

位置参数:形参和实参个数必须保持一致

Python函数参数是函数 python函数包括参数函数吗_默认参数_03


像这样的是按照位置传送参数,形参和实参的位置是一一对应的。

默认参数:形参和实参个数可以不一致

Python函数参数是函数 python函数包括参数函数吗_调用函数_04


使用默认参数就是给形参定义一个默认的值,如果有实参传过来,则使用实参,否则使用默认参数,上面的2就是定义的默认参数。

可变参数

顾名思义,可变参数就是参数是可变的,也就是个数是不一定的。

Python函数参数是函数 python函数包括参数函数吗_Python函数参数是函数_05

使用可变参数时,在形参前面加*就可以了,之后使用实参传数时可以按照自己的需求传送。

关键字参数

Python函数参数是函数 python函数包括参数函数吗_调用函数_06


kwargs是一个字典,可以传递任意多的key-value值。

函数的返回值

返回值是函数运算的结果,还需要进一步操作时,给一个返回值return用来返回函数执行结果,如果没有返回值,默认为None,python可以间接返回多个值(返回一个元组),一旦遇到return,函数执行结束,后面的代码不会执行

Python函数参数是函数 python函数包括参数函数吗_调用函数_07


如上,retuen后面的语句是不会执行的,函数可以返回多个值。

变量的作用域

变量按照作用域来分可以分为全局变量和局部变量,全局变量在整个环境生效,而局部变量只在定义的函数内部生效。