【python】函数以及参数
程序员文章站
2022-06-13 19:10:14
...
函数
-
什么是函数
函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。函数在执行后会自动销毁空间,一个函数封装一个功能。 -
定义函数
def ale(): # def:关键字 # ale:函数名 # ():存放参数
-
调用函数
通过使用函数名加括号方式调用函数ale()
-
返回值
代码:
def ale(): return "返回值" print("aaa") print(ale())
结果:
返回值
return将返回值返还给调用者,没有返回值是结果为None,有多个返回值时返回一个元组类型,return后的代码不执行!
-
注释
通过注释描述函数的功能def alen(a,b): """ 其他描述 :param a: 参数a的描述 :param b: 参数b的描述 :return: 返回值的秒速 """ return "123"
查看的函数的注释:函数名.doc
查看的函数的名字:函数名.name
函数的参数
- 形式参数
在定义函数时函数名后面括号中的变量名称称为形式参数(简称形参) - 实际参数
主调函数中调用一个函数时,函数名后面括号中的参数称为实际参数(简称实参) - 传参
将实参传递给形参的过程就是传参def ale(a): print(a) ale(1) # a:形参 # 1:实参
- 位置参数
即普通的参数def ale(a, b, c): pass
- 默认参数
指定默认参数情况下调用函数时可以不写对于值,默认会使用设置的值,如果在调用函数时给了值,则覆盖,默认参数要放在位置参数后。def alen(a=1,b="2"): pass
- 关键字参数
通过关键字进行传参def alen(a,b,c): pass alen(a="a",b="b",c="c")
- 动态参数
*args
可以接受动态的位置参数,得到的是一个元组,可通过打散获得各值
**kwargsdef alen(*args): # 聚合 print(args) print(*agrs) # 打散 alen(1,2,3,4) # 结果: # (1, 2, 3, 4) # 1 2 3 4
可以接受动态的关键字参数,得到的是一个字典,可通过打散获得键
万能传参def alen(**kwargs): print(kwargs) print(*kwargs) # 打散 alen(a=1,b=2,c=3) # 结果: # {'a': 1, 'b': 2, 'c': 3} # a b c
可以接收所有参数
仅限关键字参数def alen(*args,**kwargs): print(args,kwargs) alen(1,2,a=3,b=4)
位置介于动态位置参数和动态关键字参数之间,使用关键字传参方式传参def a(a,*args,b,**kwargs): print(a,args,b,kwargs,) a(1,2,3,b="4",s=5)
- 优先级
位置参数>动态位置参数>默认参数(关键字参数)>动态关键字参数