单元开篇:
函数定义和使用
1、函数的定义和调用。
2、函数的参数传递
3、局部变量和全局变量
4、lambda函数(匿名函数)
5、函数递归
函数相关的保留字
def 声明函数
return
global(全局变量)
lambda 匿名函数
python中函数没有写特定的返回值类型
python函数定义的注意事项:
1、默认情况下,函数不需要类型声明。
2、默认情况下,函数返回值不需要类型声明。
3、参数和返回值可以为0个或者多个。
在c、c++语言中限定函数的返回值,是为了限定函数对内存的使用。
函数可以没有参数,也可以没有,但是必须保留括号
Python函数参数传递的4个方面
- 位置传递和名称传递
- 可选参数传递
- 可变参数传递:元祖形式和字典形式
- 多个返回值
// 整除符号
可变参数:函数可以接受不确定总数的参数变量。
*b 这样是元祖形式
**d 这样写是字典形式,里面是一个一个键值对。
这时b是一个元祖 b = (3,5,8)
函数参数是**d 那么 d={a:3,b:4,c:8}是一个字典,里面是键值对。
函数可返回0个或者多个结果
- return保留字用来传递返回值,或表示函数结束。
- 函数可以有返回值,也可以没有,可以有return,也可以没有。
- return可以传递0个返回值,也可以传递任意多个返回值。
当函数返回多个值时,函数会默认将返回的多个值组成一个元祖再返回。
在函数中并没有声明ls,在这种情况下,函数默认会到全局变量中去寻找ls
这是因为python语言在调用函数时,它会将组合数据类型的引用放到函数的调用中,实际上变量ls的引用会关联到全局变量上。
使用规律总结:
- 基本数据类型,无论是否重名,局部变量与全局变量不同。
- 可以通过global保留字在函数内部声明全局变量
- 组合数据类型,如果局部变量没有真实创建,则是全局变量。
lambda函数
- lambda函数返回函数名作为结果
- lambda函数是一种匿名函数,机没有名字的函数。
- 使用lambda关键字定义,函数名是返回结果。
- lambda函数用于定义简单的,能够在一行内表示的函数。
递归的定义:
将字符串的第一个字符放到最后,从第二个字符开始继续递归。