- 形参:形式参数,写在函数定义处的参数
- 实参:实际参数,写在函数调用处的参数
- 位置参数:函数定义时没有默认值的参数称为位置参数,也叫必传参数,实参必须与其对应
- 默认参数:函数定义时有默认值的参数称为默认参数,调用时可以不传。默认蚕食必须放在最后
- 关键字参数:函数调用时指定参数名字进行传参,这样参数的顺序就无所谓了
- 可变长度参数:
# 可变长度参数 def var_len_args(a, b, *args, **kwargs): print(a, b) # args:是一个元组,保存多传的位置参数 print('args:', args) # kwargs:是一个字典,保存多传的关键字参数 print('kwargs:', kwargs)
- `*`的作用 ```python def test(a, b): print(a, b) # test(100, 200) lt = [100, 200] # test(lt[0], lt[1]) # 与上面等价,*相当于将序列中的元素展开作为函数参数 test(*lt) def test2(aa, bb): print(aa, bb) dt = {'aa': '123', 'bb': '456'} # test2(aa=dt['aa'], bb=dt['bb']) # 与上面等价,**相当于将字典中键值对转换为关键字参数的形式 test2(**dt)
函数思考
- 函数调用和定义的位置是否是任意的?
- 不是,一定是定义在前,调用在后。
- 函数的名字能否相同?
- 不可以,虽然语法不报错,但是后者会覆盖前者,不同位置的调用结果不同
- 函数中能否定义另一个函数?
- 可以,定义在函数内部的函数称为内部函数,是很多高级功能实现的基础
标签: python
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。
还木有评论哦,快来抢沙发吧~