函数简介 定义:具有特殊功能的一段代码
优点:
解决代码的重复书写,可以将功能的实现者和使用者分开,可以提高开发效率。
分类:库函数: print input type等; 自定义:用户自己封装的函数
函数的定义格式:
def 函数体[参数列表]:
函数体
[]表示参数可选的,参数可以有,也可以没有,有也可以是一个或多个
函数名:像变量名一样,只要符合标识符命名规范即可。
函数的调用:函数定义之后不会执行,只有调用之后才会执行。
函数的分类:
#无参无返回值
def print-ten-hello():
for i in range(10):
print('hello world')
#带参数无返回值
def print_n_hello(n=10):
for i in range(n):
print('hello world!')
#带参数有返回值
def add(a,b)
return a+b
return:返回函数的返回值,一旦执行,函数立即结束。
函数的参数:
形参 形式上的参数,就是写在函数定义处的参数
例如:
def add (a,b)里面的a,b的值
实参:实际参数,就是我们在调用函数时传递的参数
例如:
print(add(2,3))中的2与3
位置参数: 函数定义时没有默认值的参数,也叫必传参数。调用时的实参与定义处的形参一一对应
默认参数:函数定义时有默认值的参数,调用时可以不传,默认参数必须放在最后。
关键字参数:函数调用时指定参数的名字,参数的位置就无所谓了
函数定义的位置时随意的吗?
不是,一定要先定义再调用,也就是调用一定要在定义之后
函数的名字可以相同吗?
不可以,如出现相同的函数,后面会覆盖之前的函数。
函数里面可以再定义一个函数吗?
可以,函数内部定义的函数叫内部函数,它是很多很多高级功能的基础。但是缩进程度不一样,结果不一样