函数参数
实际参事
实参关键逻辑是对应形参
-
位置参数
是按照位置与形参进行对应的传递
-
关键字实参
实参按照名字传递
def fun01(p1, p2, p3): print(p1) print(p2) print(p3) func01(p1=1, p2=2, p3=3) -
序列(列表/元组)实参
使用*拆分列表,将元素与形参对应
def countSecond(hour=0, minute=0, second=0): sumSecond = hour * 3600 + minute * 60 + second print(sumSecond) list01 = [1, 2, 3] countSecond(*list01)这里*作用就是拆列表,如果没有*就会把列表整个传进去
-
字典实参
使用**拆分字典,将键值对与形参对应。
def countSecond(hour=0, minute=0, second=0): sumSecond = hour * 3600 + minute * 60 + second print(sumSecond) dict04 = {"p1": 1, "p2": 2, "p3": 3} countSecond(**dict04)
形式参数
形参关键作用就是约束实参
-
默认参数,调用函数时候,可给可不给。
def func01(p1=0, p2=0, p3=0): print(p1) -
位置形参,调用函数时候一定要给。
-
不定长形参
- 星号元组形参可以将位置实参合并为元组,让位置实参数量无限。*args可以接受任意个 位置参数,但是*只能接受位置参数
def leiCheng(*args): sum = 1 for number in args: sum *= number print(sum) leiCheng(1, 2, 10, 500, 900, 4)- 双星号字典形参将实参合并为元组,将关键字实参合并为字典,让关键字实参数量无限,一般用**kwargs表示。
def fun02(**kwargs): print(kwargs) fun02(p=12, p2=78, p3=20)如果开发中所有参数都有,必须按照下面从左到右顺序否者报错。
位置形参--星号元组形参--命名关键字形参--双星号字典形参
浙公网安备 33010602011771号