我的第一篇博客
python3 函数参数的总结
1.函数参数的位置传递
例1:
def f(a,b,c): print('a=%d b=%d c=%d'%(a,b,c)) f(1,2,3)
这里会按顺序把a赋值为1,把b赋值为2,把c赋值为3
得到结果为:
a=1 b=2 c=3
2.函数的参数也可以设置默认值
例2:
def f2(a=1,b=2,c=3): print('a=%d b=%d c=%d'%(a,b,c)) f2(4,5)
这里a和b按位置顺序被分别赋值为4,5
c由于没有传入参数被赋值为默认值3
得到结果为:
a=4 b=5 c=3
3.包裹位置传递(packing)
可以接收数目不确定,数据类型不确定的多个参数
其标志是定义函数参数时形参前有 *
例3:
def f3(*parameter): print(type(parameter)) print(parameter) f3(1,2,3,'加油',['a','b'],('A','B'))
这里传入的参数可以有很多个,且这些参数会被放入parameter元组里
而元组里的元素可以是 数字,字符,列表,元组等
得到结果为:
(1, 2, 3, '加油', ['a', 'b'], ('A', 'B'))
4.包裹关键字传递
其标志是定义函数时形参有**
例4:
def f4(**dict): print(type(dict)) print(dict) f4(a=1,b=2,c=3)
这里传入的多个参数会按顺序存入dict字典里
得到结果为:
{'a': 1, 'b': 2, 'c': 3}
5.解包裹
注意:解包裹和打包是两个独立的操作,不是互逆的操作
其标志为调用函数时实参前面要加*或** 分别解开元组和字典
例5:
def f5(a,b,c): print('a=%d b=%d c=%d'%(a,b,c)) args1 = (1,2,3) f5(*args1) args2 = {'a':1,'b':2,'c':3} f5(**args2) #解开来,传递的是键值 即 1,2,3
注意:函数定义时设定的参数数目要和 解包裹后得到的元素数目相同 否则会报错!
得到结果为:
a=1 b=2 c=3 a=1 b=2 c=3
6.函数文档
说白了就是在定义函数是在下面加上注释 方便介绍该函数的用法,功能等
不过与一般注释不同,函数文档可以用和help函数来查看
例6:
def f6(): ''' 这里是f6的函数文档 我一定要放在函数体的最前面欧!不然用help也查询不到我! ''' pass help(f6)
得到结果为:
Help on function f6 in module __main__: f6() 这里是f6的函数文档 我一定要放在函数体的最前面欧!不然用help也查询不到我!
以上内容是我对python函数参数的了解,欢迎各位大佬提出我的错误和不足。
(ง •̀_•́)ง (。•́︿•̀。)