Python初识函数
Python初识函数
1,自定义函数说明文档
方法:
1
2
3
4
5def 函数名(参数):
""" 说明文档的位置 """
eg: :param a :参数 str
:param b :参数 int
:return: None书写函数说明文档是一个很好的代码习惯,在函数名后面写三对双引号并回车则会出现param等自动生成的参数格式,这时可以在冒号后面说明函数的参数的类型,以及函数的返回值类型。
2,函数的形参和实参
定义时小括号中的参数,用来接收参数用的,称为 “形参”
调用时小括号中的参数,用来传递给函数用的,称为 “实参”
3,函数的嵌套
1 | def function1(num1, num2): |
4,局部变量和全局变量
局部变量和全局变量的作用域不同
在函数内部会优先使用局部变量,再使用全局变量
局部变量和全局变量的生存周期不同:局部变量随函数调用完成或循环完成就被销毁,而全局变量的生命周期则为整个程序的生命周期
— 代码举例
1
2
3
4
5
6
7
8def function1(num1, num2):
return num1+num2
def function2(a,b):
ret = function1(a,b)
my_avg = ret/2
return my_avg
print(function2(100, 200))
5,交换变量常用的方法
1,所有语言通用,若a,b交换则定义一个临时变量c
1
2
3
4
5
6a = 100
b = 200
c = 0
c = a
a = b
b = c2,加减法,加加减减
1
2
3
4
5
6a = 100
b = 200
a = a + b
b = a - b
a = a - b
print(a,b)3,Python特有
1
2
3
4a = 100
b = 200
a,b = b, a
print(a,b)
6,参数的不同类型
1 | def usr_info(name, age='未知', gender='未知'): #缺省参数,在传参的时候可以省略age和gender也不会报错 |
1 | def usr_info(name, age, gender): |
1 | def usr_info(name, age, gender ,*args, **kwargs): |
- *不定长参数 作用(参数传多了的问题) *args将多余的参数以元组的形式存储起来 *kwargs用于存储多余的键值对
7,函数作为参数
1 | # 函数作为一个参数,函数名存储的是函数内存空间的地址 |
8,匿名函数
1 | def application(func): |
9,闭包(装饰器的前置)
1 | def func_out(func): #第二步 |
10,装饰器
- 装饰器的作用是在不修改原函数的代码逻辑的情况下,实现对代码功能的添加。使其获得验证功能。当源代码登录功能写的非常多,达到了牵一发动全身的时候就不要再源代码登录逻辑中添加代码了,这时候可以通过装饰器来实现对原功能的扩充。
1 | def func_out(func): |
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.